この記事では主にMySQLログの設定と閲覧方法を紹介しますので、困っている方は参考にしてください
MySQLには次の種類のログがあります:
エラーログ: -log-err
Queryログ: -log
Slow queryログ: -log-slow-queries
Updatesログ: -log-update
バイナリログ: -log-bin
デフォルトでは、すべてのログは mysqld データ ディレクトリに作成されます。ログをフラッシュすることで、mysqld にログ ファイルを強制的に閉じて再度開く (または、場合によっては新しいログに切り替える) ことができます。 FLUSH LOGS ステートメントを実行するか、mysqladmin flash-logs または mysqladmin refresh を実行すると、ログの更新が発生します
1. エラー ログ
--log-error[=file_name] オプションを使用して mysqld を指定します保存先 エラー ログ ファイルの場所。 file_name 値が指定されていない場合、mysqld はエラー ログ名 host_name.err を使用し、ログ ファイルをデータ ディレクトリに書き込みます。 FLUSH LOGS を実行すると、エラー ログの名前が -old サフィックスで変更され、mysqld は新しい空のログ ファイルを作成します。 (--log-error オプションが指定されていない場合、名前の変更は行われません)。
--log-error が指定されていない場合、または (Windows 上で) --console オプションを使用している場合、エラーは stderr に書き込まれます。通常、標準出力は端末です。日2. 一般クエリログ
3. スロークエリログSQL ステートメントログファイルの ry_
time秒 値が指定されていない場合、デフォルトはホスト名ではなく、サフィックスは -slow.log です。ファイル名が指定されていても絶対パス名が指定されていない場合、ファイルはデータ ディレクトリに書き込まれます。
3. 更新ログ mysql>show 'log_%';
現在のログを確認する方法
バイナリログの数を表示する
mysql>ログ;
宛先バイナリ ログ ファイルを表示するには、mysqlbinlog
shell>mysqlbinlog mail-bin.000
001
またはshell>mysqlbinlog mail-bin.000001 | tail
を使用します設定ファイルでログの出力場所を指定します
Windows: Windows 設定ファイルは my.ini で、通常は MySQL の
ディレクトリまたは c:Windows の下にあります。 Linux
: Linux の構成ファイルは my.cnf で、通常は /etc の下にあります。 Linux の場合:
Sql コード
# 在[mysqld] 中输入 #log log-error=/usr/local/mysql/log/error.log log=/usr/local/mysql/log/mysql.log long_query_time=2 log-slow-queries= /usr/local/mysql/log/slowquery.log # 在[mysqld] 中输入 #log log-error=/usr/local/mysql/log/error.log log=/usr/local/mysql/log/mysql.log long_query_time=2 log-slow-queries= /usr/local/mysql/log/slowquery.log
Sql代码 # 在[mysqld] 中输入 #log log-error="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/error.log" log="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/mysql.log" long_query_time=2 log-slow-queries= "E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/slowquery.log" # 在[mysqld] 中输入 #log log-error="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/error.log" log="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/mysql.log" long_query_time=2 log-slow-queries= "E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/slowquery.log"
long_query_time =2 --是指执行超过多久的sql会被log下来,这里是2秒 log-slow-queries= /usr/local/mysql/log/slowquery.log --将查询返回较慢的语句进行记录 log-queries-not-using-indexes = nouseindex.log --就是字面意思,log下来没有使用 索引 的query log=mylog.log --对所有执行语句进行记录 windows下开启mysql日志: 在[mysql]下加入这些(基本上等于加在最后面): log-error= #Enter a name for the query log file. Otherwise a default name will be used. #注:(写成txt文件editplus可以及时 重载 ,不过有时要放在C盘下editplus才可以及时重载) log= c:/ mysql_query .log.txt #Enter a name for the slow query log file. Otherwise a default name will be used. log-slow-queries= #Enter a name for the update log file. Otherwise a default name will be used. log-update= #Enter a name for the binary log. Otherwise a default name will be used. log-bin=
以上がMySQL のログ設定と表示方法の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。