1. ホーム
  2. mysql

[解決済み】MySQLでログファイルを見るには?

2022-04-20 20:16:14

質問

Mysqlサーバーはログファイルを作成し、いつ、どのクエリーが実行されたかなど、すべての活動の記録を保存していると読みました。

私のシステムのどこに存在するのか、誰か教えてください。どのようにそれを読むことができますか?

基本的に、私は異なる入力でデータベースをバックアップする必要がある[2つの日付の間にバックアップ]ので、私はここでログファイルを使用する必要があると思います、それは私がそれをしたい理由です...。

ユーザー名やパスワードなどの機密情報が記録される可能性があるため、このログは何らかの形で保護されなければならないと思うのですが、簡単に見ることができないように保護することは可能でしょうか?

私はシステムのroot権限を持っていますが、どうすればログを見ることができますか?

/var/log/mysql.log を開こうとしたら、空っぽです。

これは私の設定ファイルです。

[client]
port        = 3306
socket      = /var/run/mysqld/mysqld.sock

[mysqld_safe]
socket      = /var/run/mysqld/mysqld.sock
nice        = 0

[mysqld]
log = /var/log/mysql/mysql.log 
binlog-do-db=zero



user        = mysql
socket      = /var/run/mysqld/mysqld.sock
port        = 3306
basedir     = /usr
datadir     = /var/lib/mysql
tmpdir      = /tmp
skip-external-locking

bind-address        = 127.0.0.1
#
# * Fine Tuning
#
key_buffer      = 16M
max_allowed_packet  = 16M
thread_stack        = 192K
thread_cache_size       = 8

general_log_file        = /var/log/mysql/mysql.log
general_log             = 1

解決方法は?

ここでは、それらを有効にする簡単な方法を説明します。mysqlでは、プロジェクト開発時に必要とされる3つのログを頻繁に見る必要があります。

  • The Error Log . 中に発生したエラーの情報が含まれています。 サーバが動作しているとき (サーバの起動と停止も)

  • The General Query Log . これは、mysqldが何を行っているかの一般的な記録です。 を行う(接続、切断、クエリ)。

  • The Slow Query Log . Ιt は、quot;slow" の SQL 文で構成されています (このように)。 という名前で表示されます。)

MYSQLでは、デフォルトでログファイルは有効になっていません。すべてのエラーは syslog ( /var/log/syslog ).

有効化するには、以下の手順で行います。

ステップ1: このファイルにアクセスする ( /etc/mysql/conf.d/mysqld_safe_syslog.cnf の行を削除またはコメントアウトしてください。

ステップ2: mysqlのconfファイルに移動して( /etc/mysql/my.cnf ) を追加し、以下の行を追加します。

エラーログを有効にするには、以下を追加します。

[mysqld_safe]
log_error=/var/log/mysql/mysql_error.log

[mysqld]
log_error=/var/log/mysql/mysql_error.log

一般的なクエリログを有効にするには、以下を追加します。

general_log_file        = /var/log/mysql/mysql.log
general_log             = 1

スロークエリログを有効にするには、以下を追加します。

log_slow_queries       = /var/log/mysql/mysql-slow.log
long_query_time = 2
log-queries-not-using-indexes

step3です。 ファイルを保存し、以下のコマンドでmysqlを再起動します。

service mysql restart

実行時にログを有効にするには、mysql クライアントにログインして ( mysql -u root -p ) を与えてください。

SET GLOBAL general_log = 'ON';
SET GLOBAL slow_query_log = 'ON';

最後に一つ、ここで触れておきたいのは あるブログでこんなことを読みました。 . ありがとうございます。それは私のために動作します。

クリック ここで をクリックするとブログが表示されます。