web-dev-qa-db-ja.com

MySQL設定でwait_timeoutとinteractive_timeoutの値を選択しますか?

打撃を受けているライブサーバーがあるので、できる限りの最適化を図っています。その上でMySQLTunerスクリプト( http://mysqltuner.com/ )を実行しました。これは、wait_timeoutおよびInteractive_timeoutに28800未満の値を設定する必要があることを示しています。 1から28800の間で選択できる数はたくさんあります!

MySQLのドキュメントでこれらの変数の意味を調べましたが、非常に基本的な説明しかなく、値を選択するためのガイダンスはありませんでした。

一般的に受け入れられているベストプラクティスと見なされる値はありますか?また、低すぎる値を選択した場合の結果はどうなるでしょうか。

おかげで、

バート。

12
Bart B

wait_timeoutは、非対話型接続で接続を閉じるまでにMySQLが待機する非アクティブ期間の秒数です。 interactive_timeoutは同じですが、インタラクティブセッション(mysql Shell)の場合

低すぎる値を設定すると、特にWebアプリケーションで永続的な接続を使用している場合に、接続が予期せずドロップする可能性があります。

設定する値が高すぎると、古い接続が開いたままになり、データベースへの新しいアクセスが妨げられる可能性があります。

IMO、wait_timeoutの場合、可用性とパフォーマンスに影響を与えずに、この値をできるだけ低くする必要があります。パフォーマンスが低下している場合は、10秒から始めて徐々に増やしていきます。

Interactive_timeoutの場合、この値を変更しても、アプリケーションのパフォーマンスは実際には向上または低下しません。

19
Charles Hooper