แก้ไขปัญหาได้แล้ว แต่ฉันกำลังเขียนเพื่ออ้างอิงในอนาคต
/root/.my.cnf
[mysqladmin]
user = root
password = pa$$w0rd
/etc/logrotate.d/mysql
/var/log/mysql-slow.log /var/log/mysqld.log {
daily
rotate 7
dateext
compress
missingok
#notifempty
sharedscripts
create 644 mysql mysql
postrotate
/usr/bin/mysqladmin flush-logs
endscript
}
logrotate
ทำงานได้ดีเมื่อทำงานจากบรรทัดคำสั่ง:
# logrotate -v -f /etc/logrotate.d/mysql
แต่มันไม่ทำงานเมื่อทำงานจาก cron เวลา 4:00 น. ไฟล์บันทึกถูกหมุน แต่ MySQL ไม่บันทึกข้อผิดพลาดไปยังไฟล์ที่สร้างขึ้นใหม่:
-rw-r--r-- 1 mysql mysql 0 Aug 7 10:13 /var/log/mysqld.log
-rw-r--r-- 1 mysql mysql 20 Aug 4 04:04 /var/log/mysqld.log-20120804.gz
-rw-r--r-- 1 mysql mysql 20 Aug 5 04:04 /var/log/mysqld.log-20120805.gz
-rw-r--r-- 1 mysql mysql 20 Aug 6 16:28 /var/log/mysqld.log-20120806.gz