ホームページ » の仕方 » MySQLのすべてのSQLクエリを監視する

    MySQLのすべてのSQLクエリを監視する

    MicrosoftのSQL ServerにはProfilerというツールがあり、これを使用してデータベースにヒットしたすべてのSQLクエリを監視できます。データベース管理者だけでなくプログラマーにとっても、アプリケーションによって生成された正確な照会をトラブルシューティングするのに非常に役立ちます。.

    MySQLを頻繁に使用することに切り替えたので、これは私がやり方を理解したい最初のことの1つでした。 WordPressまたはphpBBによって生成された実際のSQLコードを他にどのように見ることができますか?

    最初にしなければならないことは、MySQLでクエリのロギングを有効にすることです。これは開発時にのみ行われるべきであることに注意してください。すべてのクエリをファイルに記録するのは遅くなります。.

    MySQL設定ファイル(通常はUbuntuの/etc/mysql/my.cnf)を見つけて開きます。 「ロギングとレプリケーション」というセクションを探してください。


    #*ロギングと複製

    #どちらの場所もcronjobによって回転します.
    #このログタイプはパフォーマンスキラーであることに注意してください.

    log = /var/log/mysql/mysql.log

    ロギングをオンにするには、「log」変数のコメントを外してください。このコマンドでMySQLを再起動します。

    sudo /etc/init.d/mysql restart

    これで、クエリが入ってきたときにクエリの監視を開始する準備が整いました。新しい端末を開き、このコマンドを実行してログファイルをスクロールし、必要に応じてパスを調整します.

    tail -f /var/log/mysql/mysql.log

    今すぐあなたのアプリケーションを実行します。データベースウィンドウのクエリがターミナルウィンドウに表示されます。 (端末でスクロールと履歴が有効になっていることを確認してください)

    私は感心します、phpbb3はかなりタイトな、最適化されたSQLコードを持っています。 WordPressは、その一方で、非常に非効率的です.