1) mysqldump から単一のデータベースを抽出します。
sh mysqldumpsplitter.sh --source filename --extract DB --match_str
database-name
上記のコマンドは、指定された「ファイル名」の sql ファイルから指定されたデータベースの sql を作成し、圧縮形式でデータベース名.sql.gz に保存します。
2) mysqldump から単一のテーブルを抽出します。
sh mysqldumpsplitter.sh --source filename --extract TABLE --match_str
table-name
上記のコマンドは、指定された「ファイル名」の mysqldump ファイルから指定されたテーブルの SQL を作成し、それを圧縮形式でデータベース名.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 ファイルからすべてのデータベースを抽出し、圧縮形式で個々のデータベース名.sql.gz に保存します。
5) mysqldump からすべてのテーブルを抽出します。
sh mysqldumpsplitter.sh --source filename --extract ALLTABLES
上記のコマンドは、指定された「filename」mysqldump ファイルからすべてのテーブルを抽出し、圧縮形式で個々の table-name.sql.gz に保存します。
6) mysqldump からテーブルのリストを抽出します。
sh mysqldumpsplitter.sh --source filename --extract REGEXP
--match_str '(table1|table2|table3)'
上記のコマンドは、指定された「ファイル名」の mysqldump ファイルからテーブルを抽出し、圧縮形式で個々のテーブル名.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 ファイルからすべてのテーブルを抽出し、テーブルを圧縮形式で個々のファイル (/path/to/extracts/ に格納されている table-name.sql.gz) に抽出します。スクリプトは、存在しない場合、フォルダー /path/to/extracts/ を作成します。
10) フルダンプで 1 つのデータベースから 1 つ以上のテーブルを抽出します。
複数のデータベースのフル ダンプがあり、1 つのデータベースからいくつかのテーブルを抽出したいとします。
単一のデータベースを抽出します。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
上記のコマンドは、DBNAME データベースからすべてのテーブルを SQL 形式で抽出し、「out」ディレクトリに保存します。
12) mysqldump ファイルの内容を一覧表示する
mysqldumpsplitter.sh --source filename --desc
上記のコマンドは、ダンプ ファイルからデータベースとテーブルを一覧表示します。