まとまりのないブログ

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

HAPROXYを使ってmysqlサーバーの負荷分散

備忘録 listen mysql-db bind *:3306 mode tcp option mysql-check user haproxy1 balance roundrobin server …

no image

全文検索エンジンmroongaを使ってみた

sennaをビルドして使っていたのだけれど、レコード件数と速度に限界を感じてきていたのでその後継といわれるmroonga3.04を使ってみた。使ってみた感想は、mroongaストレージエンジンでの全文 …

no image

SQL_CALC_FOUND_ROWSの効果

mysqlでは行数のカウントをするのにSQL_CALC_FOUND_ROWSというのを使うことができるようだが、where句に条件を指定した場合だとcount(*)でレコードをカウントする場合と大差な …

no image

Table is marked as crashed

昨日、プログラム側でmysqlのテーブルがクラッシュしているという返事を受け取った。はあ、またか・・・と思いながらcheck tableを該当するテーブルで実行してみる。

no image

eclipseのプロジェクトのソースファイルが全部消えた

eclipseで普通にデバッグ作業していただけなのにいきなりワークスペースのプロジェクトのフォルダ内のファイルが全部消えた。今までこんなことは経験がなかったので焦った。 消えるきっかけとなった原因 j …