10bet网址
MySQL 5.6リファレンスマニュアル
本手册下载
PDF (Ltr)- 26.8 mb
PDF (A4)- 26.8 mb
HTML下载(TGZ)- 7.2 mb
HTML下载(邮政编码)- 7.2 mb


5.2.2エラーログ

エラーログにはmysqldが開始および停止された時期を示す情報と,サーバーが実行中に発生したあらゆるクリティカルエラーが格納されます。自動的にチェックまたは修復することが必要なテーブルがmysqldで検出された場合,エラーログに警告メッセージが書き込まれます。

オペレーティングシステムによっては,mysqldが異常終了した場合にエラーログにスタックトレースが記録されます。トレースを使用して,mysqldが異常終了したかどうかを判断することができます。セクション24.4”MySQLのデバッグおよび移植”を参照してください。

mysqld_safeを使用してmysqldが開始され,mysqldが予期せず異常終了した場合,mysqld_safeはこれを検出し,mysqldを再起動し,重启mysqldメッセージをエラーログに書き込みます。

次の説明で,コンソールは標準エラー出力stderrを意味し,標準エラー出力がリダイレクトされていないかぎり,これはユーザーのターミナルウィンドウまたはコンソールウィンドウです。(たとえば,——syslogオプションを指定して起動した場合,あとで説明するように,mysqld_safeではサーバーのstderrsyslogに送信されるような調整が行われます)。

Windowsで,——日志错误および——控制台オプションは,両方ともエラーロギングに影響します。

  • ——日志错误を指定しない場合,mysqldはデータディレクトリ内のhost_name.errにエラーメッセージを書き込みます。

  • ——日志错误[=file_name]を指定した場合,mysqldはエラーログファイルにエラーメッセージを書き込みます。指定されたファイルが存在する場合,サーバーはそのファイルを使用し,別のディレクトリを指定する絶対パス名が指定されている場合を除き,そのファイルをデータディレクトリ内に作成します。ファイルが指定されない場合,デフォルト名は,データディレクトリ内のhost_name.errです。

  • ——控制台を指定した場合,mysqldは,——日志错误がさらに指定される場合を除き,エラーメッセージをコンソールに書き込みます。両方のオプションが存在する場合,——控制台は無視されて効果がなくなります。それらの順序は関係なく,——日志错误が優先されて,エラーメッセージがログファイルに記録されます。

さらにWindowsでは,サーバーはイベントおよびエラーメッセージをアプリケーションログ内のWindowsイベントログに書き込みます。警告および请注意のマークが付いたエントリは,イベントログに書き込まれますが,個々のストレージエンジンからの情報ステートメントなどの情報メッセージは書き込まれません。これらのログエントリのソースはMySQLです。Windowsイベントログへの情報の書き込みを無効にすることはできません。

UnixおよびUnixに類似したシステムでは,mysqldはエラーログメッセージを次のように書き込みます。

  • ——日志错误を指定しない場合,mysqldはエラーメッセージをコンソールに書き込みます。

  • ——日志错误[=file_name]を指定した場合,mysqldはエラーログファイルにエラーメッセージを書き込みます。指定されたファイルが存在する場合,サーバーはそのファイルを使用し,別のディレクトリを指定する絶対パス名が指定されている場合を除き,そのファイルをデータディレクトリ内に作成します。ファイルが指定されない場合,デフォルト名は,データディレクトリ内のhost_name.errです。

    注記

    百胜またはAPTパッケージインストールでは,サーバー構成ファイル内の日志错误= / var / log / mysqld.logのようなエントリによって,エラーログの場所を/var/logの下に構成することが一般的です。エントリからファイル名を削除すると,エラーログの場所がそのデフォルト設定であるデータディレクトリに戻されます。

エラー出力がファイルに書き込まれる場合,実行時に,log_errorシステム変数がエラーログファイル名を示します。

オプションファイル内の(mysqld)(服务器),または(mysqld_safe)セクションに——日志错误を指定した場合,mysqld_safeはオプションを検出して使用します。

刷新日志またはmysqladmin flush-logsを使用してログをフラッシュし,mysqldがエラーログをファイルに書き込む場合(たとえば,——日志错误オプションを使用して開始された場合),サーバーはログファイルを閉じて再オープンします。ファイルを名前変更するには,フラッシュする前にこれを手動で実行します。そのあとでログをフラッシュすると,新しいファイルが元のファイル名で再オープンします。たとえば,次のコマンドを使用して,ファイルを名前変更し,新しいファイルを作成することができます。

壳> mvhost_name.errhost_name.err-old shell> mysqladmin flush-logs shell> mv . loghost_name.err-old备份目录

Windowsでは,mvの代わりに重命名を使用してください。

サーバーが指定されたファイルに書き込まない場合,ログがフラッシュされたときにエラーログの名前変更は実行されません。

mysqld_safeを使用してmysqldを開始した場合,mysqld_safeではmysqldがエラーメッセージをログファイルまたはsyslogに書き込むような調整が行われます。mysqld_safeには——syslog——skip-syslog,および——日志错误の3つのエラーロギングオプションがあります。ロギングオプションを指定しないか——skip-syslogを指定した場合のデフォルトは,デフォルトログファイルを使用することです。エラーログファイルの使用を明示的に指定する場合,——日志错误=file_namemysqld_safeに指定すると,mysqld_safeではmysqldがメッセージをログファイルに書き込むような調整が行われます。syslogを代わりに使用するには,——syslogオプションを指定します。

——log-warningsオプションまたはlog_warningsシステム変数を使用すると,エラーログへの警告ロギングを制御できます。デフォルト値は有効化(1)です。値0を使用して警告ロギングを無効にすることができます。値が1より大きい場合,中止された接続がエラーログに書き込まれ,新しい接続の試行についてのアクセス拒否エラーが書き込まれます。セクションB.5.2.11“通信エラーおよび中止された接続”を参照してください。