ユーザ用ツール

サイト用ツール


02_freebsd:04_database:01_mysql:mysql_logrotate

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

次のリビジョン
前のリビジョン
02_freebsd:04_database:01_mysql:mysql_logrotate [2012/12/13 00:16] – 作成 matsui02_freebsd:04_database:01_mysql:mysql_logrotate [2021/03/23 22:43] (現在) matsui
行 1: 行 1:
 +====== MySQL - ログローテート ======
  
 +MySQLのログってnewsyslogなんかに記述しても上手くローテートしてくれません。\\
 +新しいログファイルの使用を MySQL に強制するには、mysqladmin flush-logs を使用する必要があります。\\
 +Linuxのrpmなんかだと、ローテート用のプログラムが用意されてるみたいなんですが、\\
 +FreeBSDはそんなのないので、簡単なシェルを書いてCronで実行するような処理が必要になります。
 +
 +====== MySQLのログをローテート ======
 +
 +/etc/newsyslog.confに記述。
 +
 +今回は一週間分、圧縮せずにローテートするよう記述。
 +<code>
 + # vi /etc/newsyslog.conf
 + -----------------追加--------------------
 + /var/log/mysql/mysql.log                660  7    *    @T00   B
 + -----------------追加--------------------
 +</code>
 +
 +/etc/crontabにパーミッション変更とMySQLのflush-logsを実行。
 +<code>
 + # vi /etc/crontab
 + 01 0 * * * root /usr/sbin/chown mysql /var/log/mysql/mysql.log ; /usr/local/bin
 + /mysqladmin -u root -p[MySQLのrootパスワード] flush-logs
 +</code>
 +
 +<color red>※root -p[MySQLのrootパスワード]の個所は-pの後にスペースは入れないようにする。</color>
 +
 +{{tag>MySql logrotate}}