skip slave sql error | mysql

slaveでsqlエラーが出ると

mysql > show slave status;

Slave_IO_Running: Yes
Slave_SQL_Running: No
--
Last_Errno: 
Last_Error: Error 'xxx'

となりました。
(原因はいろいろですが、単純な場合は、slave側でstart slaveの前に何かsqlを実行してそれが邪魔しているとか
飛ばしても良いエラーの場合は、

stop slave;
SET GLOBAL SQL_SLAVE_SKIP_COUNTER = 1;
start slave;

でスキップします。

====
データがある状態からstart slaveするときは。

master のポジションを確認

FLUSH TABLES WITH READ LOCK; // マスターの書き込みを停止。& dump & copy

show master status; // file positionを確認
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 |     2133 |              |                  |
+------------------+----------+--------------+------------------+
1 row in set (0.00 sec)

UNLOCK TABLES; // データのコピーとか終わったら。

slave側にdumpしたデータを入れる。

終わったら masterを設定する。ここでfile positionを利用。

CHANGE MASTER TO
MASTER_HOST = 'master.xxx',
MASTER_USER = 'tranode',
MASTER_PASSWORD = 'xxx',
MASTER_PORT = xxx,
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=2133
;

start slave; // show slave status;で確認

This entry was posted on 木曜日, 12月 15th, 2011 at 3:38 PM and is filed under mysql. You can follow any responses to this entry through the RSS 2.0 feed. Both comments and pings are currently closed.

Unityによるゲームを公開しております iOS/Android
https://itunes.apple.com/jp/app/lost-knight-3d-action/id900917032
https://play.google.com/store/apps/details?id=com.groundroad.runknight

各種開発支援・機能開発等小さいお仕事などもお請けしております。
unity開発支援, PHPシステム開発, javascript/html5 フロント開発, titanium mobileアプリ開発
お気軽にお問い合わせください
大崎・五反田近郊での対面でのお打ち合わせはいつでも可能です。