1)从mysqldump中提取单个数据库:
sh mysqldumpsplitter.sh --source filename --extract DB --match_str
database-name
上面的命令将从指定的“文件名” sql 文件为指定的数据库创建 sql,并将其以压缩格式存储到 database-name.sql.gz。
2)从mysqldump中提取单个表:
sh mysqldumpsplitter.sh --source filename --extract TABLE --match_str
table-name
上面的命令将从指定的“文件名”mysqldump 文件为指定的表创建 sql,并将其以压缩格式存储到 database-name.sql.gz。
3)从mysqldump中提取匹配正则表达式的表:
sh mysqldumpsplitter.sh --source filename --extract REGEXP
--match_str regular-expression
上面的命令将从指定的“文件名”mysqldump 文件中为匹配指定正则表达式的表创建 sql,并将其以压缩格式存储到单独的 table-name.sql.gz。
4)从mysqldump中提取所有数据库:
sh mysqldumpsplitter.sh --source filename --extract ALLDBS
上面的命令将从指定的“文件名”mysqldump 文件中提取所有数据库,并将其以压缩格式存储到单独的 database-name.sql.gz 中。
5)从mysqldump中提取所有表:
sh mysqldumpsplitter.sh --source filename --extract ALLTABLES
上面的命令将从指定的“文件名”mysqldump 文件中提取所有表,并将其以压缩格式存储到单独的 table-name.sql.gz 中。
6)从mysqldump中提取表列表:
sh mysqldumpsplitter.sh --source filename --extract REGEXP
--match_str '(table1|table2|table3)'
上面的命令将从指定的“文件名”mysqldump 文件中提取表,并将它们以压缩格式存储到单独的 table-name.sql.gz 中。
7)从压缩的mysqldump中提取数据库:
sh mysqldumpsplitter.sh --source filename.sql.gz --extract DB
--match_str 'dbname' --decompression gzip
上述命令将使用 gzip 解压 filename.sql.gz,从“filename.sql.gz”中提取名为“dbname”的数据库并将其存储为 out/dbname.sql.gz
8) 以未压缩格式从压缩的 mysqldump 中提取数据库:
sh mysqldumpsplitter.sh --source filename.sql.gz --extract DB
--match_str 'dbname' --decompression gzip --compression none
上面的命令将使用 gzip 解压缩 filename.sql.gz 并从“filename.sql.gz”中提取名为“dbname”的数据库并将其存储为普通 sql out/dbname.sql
9)从不同文件夹的mysqldump中提取所有表:
sh mysqldumpsplitter.sh --source filename --extract ALLTABLES
--output_dir /path/to/extracts/
上述命令将从指定的“文件名”mysqldump 文件中提取所有表,并将压缩格式的表提取到单独的文件中,table-name.sql.gz 存储在 /path/to/extracts/ 下。如果不存在,该脚本将创建文件夹 /path/to/extracts/。
10) 从一个数据库中提取一个或多个表以进行完全转储:
假设您有一个包含多个数据库的完整转储,并且您想从一个数据库中提取几个表。
提取单个数据库:sh mysqldumpsplitter.sh --source filename
--extract DB --match_str DBNAME --compression none
提取所有表sh mysqldumpsplitter.sh --source out/DBNAME.sql
--extract REGEXP --match_str "(tbl1|tbl2)"
,尽管我们可以使用另一个选项在单个命令中执行此操作,如下所示:
sh mysqldumpsplitter.sh --source filename --extract DBTABLE
--match_str "DBNAME.(tbl1|tbl2)" --compression none
上面的命令将从当前目录中文件夹“out”下的 sql 格式的 DBNAME 数据库中提取 tbl1 和 tbl2。
您可以按如下方式提取单个表:
sh mysqldumpsplitter.sh --source filename --extract DBTABLE
--match_str "DBNAME.(tbl1)" --compression none
11)从特定数据库中提取所有表:
mysqldumpsplitter.sh --source filename --extract DBTABLE --match_str
"DBNAME.*" --compression none
上面的命令将以 sql 格式从 DBNAME 数据库中提取所有表并将其存储在“out”目录下。
12)列出mysqldump文件的内容
mysqldumpsplitter.sh --source filename --desc
上面的命令将列出转储文件中的数据库和表。