このページの翻訳:
- 日本語 (ja)
- English (en)
最近の更新
Tag Cloud
このページへのアクセス
今日: 5 / 昨日: 0
総計: 1062
- Dokuwiki.fl8.jp(202)
- 13 CentOS6メール設定(13)
- 02 ProFTPD(10)
- 06 GitPrep(9)
- 71 vsftpd(9)
- 14 rsync(9)
最近の更新
このページへのアクセス
今日: 5 / 昨日: 0
総計: 1062
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の後にスペースは入れないようにする。