まとまりのないブログ

something which something is something

mysql

mysqlのレプリケーションでのエラー

投稿日:

[ERROR] Slave: Error ‘You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘sql’ at line 1′ on query. Default database: ‘auc’. Query: ‘sql’, Error_code: 1064
090327 10:51:03 [ERROR] Error running query, slave SQL thread aborted. Fix the problem, and restart the slave SQL thread with “SLAVE START”. We stopped at log ‘mysql-bin.000006’ position 79696519

おかしい。マスターでは問題ないのに、レプリケーションしているスレーブでエラーが発生している。エラーメッセージを見る限りではsqlのシンタックスエラーが起こっているということになっている。仮に、本当にsqlシンタックスエラーがあるのならば、マスターでそれは感知しないといけないことだけれど、それがないということはレプリケーションが取得するマスターのログに問題がありそうな気配が濃厚になってくる。もう一度マスターのレプリケーションの設定を見直す必要があるかもしれない。

とりあえずの対処法は、このエラーが発生した箇所をスキップする。

mysql> set global sql_slave_skip_counter = 1;
Query OK, 0 rows affected (0.00 sec)
mysql> start slave;

sql_slave_skip_counterに1を入れることで現在止まっているエラー箇所を飛ばす、ということになるのかな。start slaveでまたスレーブ動作を開始する。

その後

もう少し調べ見ると、マスターで作られたログファイルと、スレーブが取得したログファイルの内容が微妙に違っているということが判明した。問題が起こっているのはスレーブがマスターから取得してきたはずのログファイルで、どういうわけかsqlのシンタックスエラーがところどころ発生するような形でリレーログを作成している。

-mysql

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

関連記事

no image

Incorrect key file for table ‘./my/table.MYI’; try to repair it

MySQLのテーブルが壊れた。Incorrect keyとかCorruptとかエラーメッセージが出たのでrepairテーブルとかmyisamchkとか色々修復するべく試したがどうやっても直ってくれない …

no image

mysqlのテーブルのクラッシュ

/usr/local/mysql/bin/myisamchk –recover –force –sort_buffer_size=2048M /usr/local/mysql/data/auc/ …

no image

mysqlの運用時のトラブルと試行錯誤のメモ

条件 1分間にクエリの実行が30回〜60回程度発生する。 結果のテーブルは7フィールドの数千〜10万件レコード程度のテーブル mysqlのスペックはCPUがcore2duo,メモリが8GB,他のサービ …

no image

myisamchkの修復時に作成されるTMDファイル

テーブルの修復をしようとしたらtempfileが作成できないという下記のエラーが発生した。

no image

myisamchk: error: myisam_sort_buffer_size is too small

myisamchkを実行したときに myisamchk: error: myisam_sort_buffer_size is too small Try fixing it by using the …