ローカル環境のmysqlとスキーマ等の違いを確認するためにmysqldumpを使った。
manを見る限り、ポート番号は -P または --port= で指定出来ると書いてある。
mysqldump -h localhost -P 13306 -u XXX -p XXX -d --compact XXX > out.sqlそしてローカルのmysqlに対し同様に出したsqlと比較。
奇跡の完全一致。
そんなバカな。
ローカルのmysqlを停止させて実行してみる。
mysqldump: Got error: 2002: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) when trying to connectやっぱり。
エラーメッセージからするに、ドメインソケットを使ってるっぽい。
-P 指定していてもお構いなしっていうのはどっちかというとバグなんじゃないのかな。
強制的にTCPを使用させればうまくいく。
mysqldump --protocol=TCP -h localhost -P 13306 -u XXX -p XXX -d --compact XXX > out.sql
0 件のコメント:
コメントを投稿