web-dev-qa-db-ja.com

mysqlbinlogが毎日新しいログファイルを作成する理由

UbuntuのMySQLサーバーでバイナリロギングを開始しました。/var/log/mysqlにログファイルの作成を開始します。私のmy.cnf構成は次のとおりです。

log-bin="/var/log/mysql/"
expire_logs_days=10 
max_binlog_size=50M 
binlog-ignore-db="phpmyadmin"

問題:

ログフォルダを確認すると、毎日新しいファイルが表示されます。これは、6:45 AMから7:00 AM IST、つまり1:30 AMから1:45GMT頃に作成されます。しかし、バイナリロギングに関するMySQLの公式ドキュメントによると says:

サーバーは、ログを開始またはフラッシュするたびに、一連の新しいファイルを作成します。また、サーバーは、現在のログのサイズがmax_binlog_sizeに達した後、新しいバイナリログファイルを自動的に作成します。

新しいログファイルが毎日作成される理由:

  1. ターミナルでuptimeコマンドを使用して確認した過去10日間からシステムが再起動されません。
  2. Max_binlog_sizeは構成で50Mが与えられ、私のログは2〜3Mにしか達しませんでした。
  3. FLUSHログは使用していません。
  4. 魔法のように自動でタスクを実行するCRONはありません。

私はこのクエリをグーグルで検索しましたが、理由が見つかりませんでした。

誰かが私が理由を知るのを手伝ってくれる?前もって感謝します

1

4。魔法のように自動でタスクを実行するCRONはありません

私はあなたが実際にそうしていると推測します。 Linuxシステムは、多くの場合、logrotateユーティリティを使用して、多数の異なるサブシステムからのログファイルのローテーションを管理します。

Distroビルダーは、パッケージからインストールされたソフトウェアをDo Things The One TrueWay™に強制するのが大好きなので、公式ドキュメントを超えてMySQLサーバーを「拡張」して、独自のbinlogをローテーションしても驚かないでください。

Binlogが変更される頃に「logrotate」に言及しているsyslogエントリが見つかる場合があります。詳細な説明は、このあたりのファイルにある可能性があります。

/etc/logrotate.d/mysql-server
3