Moved config files out of the src directory.
[carnet-upgrade.git] / files / etc / logrotate.d / mysql-server
diff --git a/files/etc/logrotate.d/mysql-server b/files/etc/logrotate.d/mysql-server
new file mode 100644 (file)
index 0000000..6d0f02d
--- /dev/null
@@ -0,0 +1,34 @@
+#
+# - This script rotates the normal query-log and the slow-log files. 
+#   Binary-log rotation is configured in /etc/mysql/debian-log-rotate.conf
+# - All files should be in one block so that only one flush-logs is neccessary.
+# - The error log is obsolete, messages go to syslog now.
+/var/log/mysql.log /var/log/mysql/mysql.log /var/log/mysql.err /var/log/mysql/mysql.err /var/log/mysql/mysql-slow.log {
+       daily
+       rotate 7
+       missingok
+       create 640 mysql adm
+       compress
+       sharedscripts
+       postrotate
+               test -x /usr/bin/mysqladmin || exit 0
+
+               # If this fails, check debian.conf! 
+               export HOME=/etc/mysql/my.cnf
+               MYADMIN="/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf"
+               if [ -z "`$MYADMIN ping 2>/dev/null`" ]; then
+                 # Really no mysqld or rather a missing debian-sys-maint user?
+                 # If this occurs and is not a error please report a bug.
+                 if ps cax | grep -q mysqld; then
+                   exit 1
+                 fi 
+               else
+                 $MYADMIN flush-logs
+               fi
+               errlogs=`ls /var/log/mysql.err* /var/log/mysql/mysql.err* 2>/dev/null`
+               if [ -n "$errlogs" ]; then 
+                 chown root:adm $errlogs
+                 chmod 640 $errlogs
+               fi
+       endscript
+}