サポート » バグ報告と提案 » SEMAPHORESエラーが出力されDBクエリの処理ができなくなる。

  • 解決済 dateho

    (@denetsre)


    内容:最近になってDBのクエリ処理が正常に行えない状態なり
      :WEBサイトが見れなくなる事象が発生しています。
      :DBサーバのMySQLを再起動すると事象は解消しますが、
      :不規則的なタイミングで事象が頻繁に再発しております。
      :
      :mysqlのログにはINNODB MONITOR OUTPUTが出力され
      :SEMAPHORESに関するエラーが出力されております。
      :何か改善案などあれば教えていただきたいです。
      :
    —————————————————————————
    =====================================
    211220 14:25:39 INNODB MONITOR OUTPUT
    =====================================
    Per second averages calculated from the last 62 seconds
    —————–
    BACKGROUND THREAD
    —————–
    srv_master_thread loops: 140956 1_second, 140956 sleeps, 12900 10_second, 12235 background, 12235 flush
    srv_master_thread log flush and writes: 140981
    ———-
    SEMAPHORES
    ———-
    OS WAIT ARRAY INFO: reservation count 133669, signal count 26092
    –Thread 140063310575360 has waited at trx0undo.ic line 156 for 249.00 seconds the semaphore:
    X-lock (wait_ex) on RW-latch at 0x7f63872b37c0 created in file buf0buf.c line 938
    a writer (thread id 140063310575360) has reserved it in mode wait exclusive
    number of readers 1, waiters flag 0, lock_word: ffffffffffffffff
    Last time read locked in file buf0flu.c line 1319
    Last time write locked in file /builddir/build/BUILD/mysql-5.5.47/storage/innobase/include/trx0undo.ic line 156
    –Thread 140063875819264 has waited at btr0pcur.c line 425 for 243.00 seconds the semaphore:
    S-lock on RW-latch at 0x7f63661765c0 created in file buf0buf.c line 938
    a writer (thread id 140063310575360) has reserved it in mode exclusive
    number of readers 0, waiters flag 1, lock_word: 0
    Last time read locked in file row0sel.c line 2930
    Last time write locked in file /builddir/build/BUILD/mysql-5.5.47/storage/innobase/row/row0upd.c line 2144
    –Thread 140063874221824 has waited at btr0pcur.c line 425 for 238.00 seconds the semaphore:
    S-lock on RW-latch at 0x7f63661765c0 created in file buf0buf.c line 938
    a writer (thread id 140063310575360) has reserved it in mode exclusive
    number of readers 0, waiters flag 1, lock_word: 0
    Last time read locked in file row0sel.c line 2930
    Last time write locked in file /builddir/build/BUILD/mysql-5.5.47/storage/innobase/row/row0upd.c line 2144
    –Thread 140063877949184 has waited at btr0pcur.c line 425 for 235.00 seconds the semaphore:
    S-lock on RW-latch at 0x7f63661765c0 created in file buf0buf.c line 938
    a writer (thread id 140063310575360) has reserved it in mode exclusive
    number of readers 0, waiters flag 1, lock_word: 0
    Last time read locked in file row0sel.c line 2930
    —————————————————————————

    ▼サーバ情報 WEBサーバとDBサーバで分離しています。
    ■WEBサーバ
    Apache        :Apache/2.2.15 (Unix)
    PHP         :5.5.31
    wordpressのバージョン:5.8.1

    ■DBサーバ
    MySQL        :5.5.47

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • shokun0803

    (@shokun0803)

    denetsreさん、こんにちは。

    そこまで詳しいわけではないので、可能性レベルでのお話になりますが…
    例えば使用しているプラグインで、ページの閲覧情報を記録してランキングを表示するプラグインのようなものを使用しているとか、キャッシュ系のプラグインやサーバーの機能でINNODBのキャッシュを利用するようなものがあり、ページ数が多い、もしくは1ページが巨大など、INNODBのキャッシュサイズを超えたキャッシュが保存されようとしているなど、何か思い当たる節はありませんでしょうか。

    DBサーバーのメモリに余裕があるならキャッシュサイズを大きくしてみるとか、スロークエリを調査してみるとか、WordPressの範疇からはそれてしまいますが確認してみるとよろしいかもです。
    ここよりもDB系フォーラムとかの方が適切な回答が得られるかも?

    ご参考になれば。

    munyagu

    (@munyagu)

    こんにちは

    貼っていただいているのは InnoDB モニターのログで、エラーではないようですが・・・

    https://dev.mysql.com/doc/refman/5.6/ja/innodb-enabling-monitors.html

    InnoDB モニターでの定期的な出力を有効にすると、InnoDB は、その出力を mysqld サーバーの標準エラー出力 (stderr) に書き込みます。

    このモニター出力以外に mysql のエラーログやシステムログが出力されているのかもしれませんが、どちらにせよ @shokun0803 の書かれているとおり、MySQL に関するフォーラムで聞かれた方が的を得た回答が得られると思います。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「SEMAPHORESエラーが出力されDBクエリの処理ができなくなる。」には新たに返信することはできません。