MySQL ログの設定と表示方法

MySQL ログの設定と表示方法

MySQL には次のログがあります。
エラーログ: -log-err
クエリログ: -log
スロークエリログ: -log-slow-queries
ログの更新: -log-update
バイナリログ: –log-bin
デフォルトでは、すべてのログは mysqld データ ディレクトリに作成されます。ログをフラッシュすることで、mysqld にログ ファイルを強制的に閉じて再度開くようにさせることができます (場合によっては新しいログに切り替えることもできます)。ログ フラッシュは、FLUSH LOGS ステートメントを実行するか、mysqladmin flush-logs または mysqladmin refresh を実行すると発生します。

1. エラー ログ<br /> --log-error[=file_name] オプションを使用して、mysqld がエラー ログ ファイルを保存する場所を指定します。 file_name 値が指定されていない場合、mysqld はエラー ログ名 host_name.err を使用し、ログ ファイルをデータ ディレクトリに書き込みます。 FLUSH LOGS を実行すると、エラー ログの名前がサフィックス -old に変更され、mysqld によって新しい空のログ ファイルが作成されます。 (--log-error オプションが指定されていない場合、名前の変更は行われません。)
--log-error を指定しない場合、または (Windows の場合) --console オプションを使用する場合、エラーは標準エラー出力 (stderr) に書き込まれます。通常、標準出力は端末です。

2. 一般的なクエリログ
--log[=file_name] または -l [file_name] オプションを使用して起動します。 file_name の値が指定されていない場合、デフォルト名は host_name.log になります。

3. スロークエリログ
--log-slow-queries[=file_name] オプションを指定して起動すると、mysqld は実行に long_query_time 秒以上かかったすべての SQL ステートメントを含むログ ファイルを書き込みます。file_name 値が指定されていない場合は、デフォルトで、サフィックス -slow.log が付いたホスト名になります。ファイル名は指定されているが絶対パス名が指定されていない場合、ファイルはデータ ディレクトリに書き込まれます。

3. 変更履歴
--log-update[=file_name] オプションから開始することはお勧めしません。

ログ記録は有効になっていますか?
mysql> 'log_%' のような変数を表示します。
現在のログを確認する方法
mysql> マスターステータスを表示します。
バイナリログの数を表示します
mysql> マスターログを表示します。
mysqlbinlog を使用してバイナリ ログ ファイルを表示する
シェル>mysqlbinlog mail-bin.000001
または、シェル>mysqlbinlog mail-bin.000001 | tail

設定ファイルでログ出力場所を指定します。
Windows: Windows 構成ファイルは my.ini で、通常は MySQL インストール ディレクトリまたは c:\Windows にあります。
Linux: Linux 設定ファイルは my.cnf で、通常は /etc にあります。
Linuxの場合:
SQLコード
# [mysqld]に入力
#ログ
ログエラー=/usr/local/mysql/log/error.log
ログ=/usr/local/mysql/log/mysql.log
長いクエリ時間=2
ログスロークエリ = /usr/local/mysql/log/slowquery.log
# [mysqld] に #log を入力
ログエラー=/usr/local/mysql/log/error.log
ログ=/usr/local/mysql/log/mysql.log
長いクエリ時間=2
ログスロークエリ = /usr/local/mysql/log/slowquery.log


ウィンドウズ:
SQLコード
# [mysqld]に入力
#ログ
ログエラー="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/error.log"
ログ="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/mysql.log"
長いクエリ時間=2
ログスロークエリ="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/slowquery.log"
# [mysqld] に #log を入力
ログエラー="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/error.log"
ログ="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/mysql.log"
長いクエリ時間=2
ログスロークエリ="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/slowquery.log"


低速クエリを有効にする
long_query_time = 2 -- SQLが実行された後にログに記録される時間を示します。ここでは2秒です。
log-slow-queries= /usr/local/mysql/log/slowquery.log --遅いクエリを返すステートメントを記録します
log-queries-not-using-indexes = nouseindex.log -- インデックスを使用しないクエリをログに記録します
log=mylog.log --実行されたすべてのステートメントを記録する
Windows で MySQL ログを有効にする:
これらを [mysql] の下に追加します (基本的には最後に追加します)。
ログエラー=
#クエリ ログ ファイルの名前を入力します。入力しない場合は、デフォルト名が使用されます。
#注: (txt ファイルとして書き込まれると、editplus は時間内に再ロードできますが、場合によっては C ドライブに配置する必要があります。editplus は時間内に再ロードできます)
ログ = c:/mysql_query.log.txt
#スロークエリログファイルの名前を入力します。入力しない場合は、デフォルト名が使用されます。
ログスロークエリ=
#更新ログ ファイルの名前を入力します。入力しない場合は、デフォルト名が使用されます。
ログ更新=
#バイナリ ログの名前を入力します。入力しない場合は、デフォルト名が使用されます。
ログビン=

以下もご興味があるかもしれません:
  • MySQL でスロークエリのログ記録を有効にする方法
  • mysql のスロークエリを有効にする方法 mysql のスロークエリのログを有効にする方法
  • MySQL ログファイルの詳細
  • MySQL シリーズ 11 ログ

<<:  NginxはLua+Redisを使用してIPを動的にブロックします

>>:  要素 DateTimePicker+vue ポップアップボックスに時間のみが表示される問題を解決する

推薦する

フロントエンドJSサンドボックスを実装するいくつかの方法についての簡単な説明

目次序文iframeはサンドボックスを実装しますdiffメソッドを使用したサンドボックスの実装プロキ...

nginxとバックエンドポート間の競合の解決策

質問: Alice 管理システムを開発しているときに、すべてのバックエンド インターフェイスが最初の...

HTMLは正規表現を使用してテーブルの例をテストします

以下は、HTML で正規表現を使用してテーブルをチェックするサンプル コードです。具体的なコードの内...

主キーを追加または変更するMySQL SQL文操作

テーブルフィールドを追加する テーブルtable1を変更し、トランザクタvarchar(10)をNu...

Vueのメソッドとプロパティの詳細な説明

Vueのメソッドとプロパティ1. 方法使用法 1メソッド: {メソッド名: function(){}...

CSS3+JavaScript を使用したクールな呼吸効果のサンプル コード

CSS3 アニメーションで実現したシンプルでクールな効果。最終的な効果は次のようになります。 ページ...

Vue+Openlayerはグラフィックスのドラッグと回転変形効果を実現します

目次序文関連資料成果を達成する実装手順序文Openlayer には独自の拡張プラグイン ol-ext...

MySQL 5.7 JSON 型の使用の詳細

JSON は、言語に依存しないテキスト形式を使用する軽量のデータ交換形式で、XML に似ていますが、...

CSS で中空マスク レイヤーを実装するサンプル コード

この記事の内容: ページ中空マスクレイヤー、ページ中空マスクガイドレイヤー、画像中空マスク通常のマス...

HTML 挿入画像の例 (HTML 追加画像)

HTML に画像を挿入するには、画像を表示するための HTML タグが必要です。これは、img タ...

Dockerバッチコンテナオーケストレーションの実装

導入Dockerfile ビルドの実行は、単一のコンテナの手動操作です。マイクロサービス アーキテク...

MySQLにおけるSQLの実行順序についてのちょっとした質問

今日、仕事中に左結合に関するSQLの問題に遭遇しました。後で解決しましたが、この問題を通じてSQLの...

CentOS の起動時に RabbitMq ソフトウェアを自動的に起動する方法

1. /etc/init.dディレクトリに新しいrabbitmqを作成します。 [root@loca...

フロントエンド開発者は毎日HTMLタグの理解を学ばなければならない(1)

2.1 セマンティクス化により、Webページが検索エンジンに理解されやすくなりますこの章では、We...

MySQL alter ignore構文の詳細な説明

今日仕事中に、ビジネス側から次のような質問をされました。テーブルがあり、一意のフィールドを追加する必...