util.exportTable()与util.importTable()
使用util.exportTable()导出表数据,格式为.txt,不包含表ddl
JS > util.exportTable("oltp.sbtest1","/backup/sbtest1.txt")
使用util.loadTable()导入表数据
JS> util.importTable("/backup/sbtest1.txt",{schema: "oltp",table: "sbtest1"})
util.dumpTables()与util.loadDump()
使用util.dumpTables()备份表(1或多张表都可以)
JS > util.dumpTables("oltp",["sbtest1","sbtest2"],"/backup/oltp")
导入到与源库同名的数据库中
JS > util.loadDump("/backup/oltp")
从备份中导入一张表(新库名称与源库名一致)
JS > util.loadDump("/backup/oltp",{includeTables: ["oltp.sbtest1"],loadDdl: true,loadData: true})
从备份中导入到新库中一张表(新库名称与源库名不一致)
JS > util.loadDump("/backup/oltp",{includeTables: ["oltp.sbtest1"],loadDdl: true,loadData: false,schema: "oltp_new"})
JS > util.importTable("/backup/oltp/oltp@sbtest2@*.zst",{schema: "oltp_new",table: "sbtest1"})
全部导入到新库中(新库名称与源库不一致)
JS > util.loadDump("/backup/oltp",{schema: "oltp_new"})
util.dumpSchemas()与util.loadDump()
使用util.dumpSchemas()备份指定数据库
JS > util.dumpSchemas(["oltp"],"/backup/sbtest1")
恢复到与源库同名的数据库中
JS > util.loadDump("/backup/sbtest1")
只恢复部分表
JS > util.loadDump("/backup/oltp",{includeTables: ["sbtest1","sbtest2"]})
屏蔽部分表不恢复
JS > util.loadDump("/backup/oltp",{excludeTables: ["oltp.sbtest1"]})
使用util.dumpSchemas()备份指定表
JS > util.dumpSchemas(["oltp"],"/backup/sbtest2",{includeTables: ["oltp.sbtest2"]})
恢复备份的表
JS > util.loadDump("/backup/sbtest2")
util.dumpInstance()与util.loadDump()
使用util.dumpInstance()备份全部数据(默认不备份数据库information_schema、mysql、performance_schema、sys数据库)
JS > util.dumpInstance("/backup/instances")
使用util.dumpInstance()备份指定数据库
JS > util.dumpInstance("/backup/oltp",{includeSchemas: ["oltp"]})
使用util.dumpInstance()备份指定表
JS > util.dumpInstance("/backup/sbtest1",{includeTables: ["oltp.sbtest1"]})
恢复全部数据库
JS > util.loadDump("/backup/instances")
恢复指定的数据库
JS > util.loadDump("/backup/instances",{includeSchemas: ["oltp"]})
恢复指定表
JS > util.loadDump("/backup/instances",{includeTables: ["oltp.sbtest1"]})
参考MySQL Shell官方手册:MySQL Shell Utilities