このページの翻訳:
- 日本語 (ja)
- English (en)
最近の更新
Tag Cloud
このページへのアクセス
今日: 9 / 昨日: 0
総計: 1066
- Dokuwiki.fl8.jp(378)
- 14 rsync(18)
- FreeBSD カーネル再構築(17)
- 05 rsync(17)
- IPMIコマンド(17)
最近の更新
このページへのアクセス
今日: 9 / 昨日: 0
総計: 1066
MySQLのログってnewsyslogなんかに記述しても上手くローテートしてくれません。
新しいログファイルの使用を MySQL に強制するには、mysqladmin flush-logs を使用する必要があります。
Linuxのrpmなんかだと、ローテート用のプログラムが用意されてるみたいなんですが、
FreeBSDはそんなのないので、簡単なシェルを書いてCronで実行するような処理が必要になります。
/etc/newsyslog.confに記述。
今回は一週間分、圧縮せずにローテートするよう記述。
# vi /etc/newsyslog.conf -----------------追加-------------------- /var/log/mysql/mysql.log 660 7 * @T00 B -----------------追加--------------------
/etc/crontabにパーミッション変更とMySQLのflush-logsを実行。
# 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
※root -p[MySQLのrootパスワード]の個所は-pの後にスペースは入れないようにする。