【MySQL】MySQL Utilities ~ mysqldiff / mysqldbcompare etc... ~

MySQL Utilities とは?

 * Python言語により作成された便利なコマンドラインツール群

mysqlserverclone

 * 動作中のMySQLを元に別インスタンスを開始
* 注意点
 * クローン元からデータベースオブジェクト(表、ビュー、プロシジャ、トランザクション、等)は引き継がない
 * my.cnfは引き継がない

mysqldbcopy

 * サーバー間でのデータベースのコピー

mysqldiff

 * データベースオブジェクト定義の比較

mysqldbcompare

 * データベース比較

■ インストール

sudo yum install -y mysql-utilities

# 確認の意味を込めて...
mysqldbcopy --version
# MySQL Utilities mysqldbcopy version X.X.X ... とバージョン表示

MySQL Utilitiesの記法

--server=ユーザ名:パスワード@ホスト名:ポート番号

■ コマンド例

mysqldiff

# --force : 最後まで実行する
# --skip-table-options : テーブルのオプションに差分があっても無視する
mysqldiff  --server1=root:passowrd@127.0.0.1:3306 --server2=root:passowrd@127.0.0.1:3306 sampledb0.user:sampledb1.user --force --skip-table-options

mysqldbcompare

mysqldbcompare --server1=root:passowrd@127.0.0.1:3306 --server2=root:passowrd@127.0.0.1:3306 sampledb0:sampledb1