一般ログで現在トラフィックをキャプチャしているかどうかを確認します。
SELECT @@general_log; -- 1 if capturing, 0 if not
-- for me, a 1. This means I have been capturing (good for development. Poor idea for Production)
SELECT @@general_log_file; -- file name for General Log if capturing.
-- for me: GeneralLogBegin_20160803_1420.log
SELECT @@datadir; -- the location of the general_log, and other logs
-- for me: C:\ProgramData\MySQL\MySQL Server 5.6\Data\
私がキャプチャしていたので、以下の一般ログのキャプチャをオフにします。
SET GLOBAL general_log=0; -- stop logging
ログ ファイルをバックアップ ディレクトリに移動し、名前をGL_from_20160803_1420_to_20160806_1559
上記のファイルが具体化するキャプチャの内容と日時の範囲にはほとんどあいまいさがありません。
ログ ファイル キャプチャの新しい名前を設定します (ファイル名の開始セグメント)。
SET GLOBAL general_log_file='GeneralLogBegin_20160806_1559.log';
SET GLOBAL general_log=1; -- Start logging again
サーバーに接続するアプリを実行すると、一般ログに次のものが含まれます。
チャンクA:
160806 16:08:37 170 Connect MrSmithers@www.xxx.yyy.zzz on stackoverflow
170 Query SHOW VARIABLES
170 Query SELECT TIMEDIFF(NOW(), UTC_TIMESTAMP())
170 Query SHOW COLLATION
170 Query SET NAMES latin1
170 Query SET character_set_results=NULL
170 Init DB my_db_name
注:あなたがする必要があるかもしれません
mysqladmin -u root -p flush-log
(パスワードの入力を求められます)ログをキャッシュからファイルにフラッシュするため。ところで、Sublime Textは、現在読み込まれているテキスト ファイルの自動更新に優れています。ログファイルなど。
したがって、ChunkA
上記は、入ってくる新しい接続の接続スタブです。それは、使用中のプログラムのコマンドによって駆動されます。これは、慣れ親しんでコーディングするプログラム コマンドの前です。新しい接続を継続的に作成し、記述したコードを実行し、切断している場合、これらはすべて手荷物の一部です。単純な方法でそれらを最適化することはできません。
考慮すべきことは、実稼働環境で一般クエリ ログをオフにすることです。そして、デバッグおよびテスト環境設定中にのみ有効にします。それをオンにすると、スタックに不要な負担がかかります。