>Description:
To make myself clear, I am talking about the binary update log file.
When specifing a fixed filename in my.cnf and running the flush-logs command
(via mysqladmin) MySQL does not close the file and open the new file when
run by a logrotate script. This does work correctly if no log filename is
specified.
>How-To-Repeat:
THIS WORKS....
File: my.cnf
...
# Uncomment the following if you want to log updates
log-bin
...
File: log-files rotate script
...
/home/mysql/data/raq804-bin.001 {
create 600 mysqldb mysqldb
notifempty
daily
rotate 14
missingok
nocompress
postrotate
# just if mysqld is really running
# if test -n "`ps acx|grep mysqld`"; then
/usr/local/mysql/bin/mysqladmin flush-logs
# fi
endscript
}
...
THIS DOESN'T.....
File: my.cnf
...
# Uncomment the following if you want to log updates
log-bin=update.log
...
File: log-files rotate script
...
/home/mysql/data/update.log {
create 600 mysqldb mysqldb
notifempty
daily
rotate 14
missingok
nocompress
postrotate
# just if mysqld is really running
# if test -n "`ps acx|grep mysqld`"; then
/usr/local/mysql/bin/mysqladmin flush-logs
# fi
endscript
}
...
The results of the above can be shown below. During the running of the
logrotate script a PHP-based script is individually adding 100,000 rows
using single INSERT statements
[root@raq804 data]# l -rt
total 3328
drwxr-x--- 2 mysqldb mysqldb 1024 May 10 11:41 test
drwxr-x--- 2 mysqldb mysqldb 1024 Jul 31 01:41 mysql
drwxrwxr-x 3 root root 1024 Oct 15 19:27 ..
drwx------ 2 mysqldb mysqldb 1024 Oct 15 19:43 filler
-rw-rw-r-- 1 root mysqldb 1512 Oct 29 23:56 log-files
-rw-rw---- 1 mysqldb mysqldb 13 Oct 29 23:58 update.index
-rw-rw---- 1 mysqldb mysqldb 5 Oct 29 23:58 raq804.uk2net.com.pid
-rw-rw-r-- 1 mysqldb mysqldb 83 Oct 29 23:58 raq804.uk2net.com.err
drwxr-x--- 6 mysqldb mysqldb 1024 Oct 29 23:58 .
-rw-rw---- 1 mysqldb mysqldb 3382049 Oct 29 23:59 update.log
[root@raq804 data]# logrotate -f log-files
[root@raq804 data]# l -rt
total 5857
drwxr-x--- 2 mysqldb mysqldb 1024 May 10 11:41 test
drwxr-x--- 2 mysqldb mysqldb 1024 Jul 31 01:41 mysql
drwxrwxr-x 3 root root 1024 Oct 15 19:27 ..
drwx------ 2 mysqldb mysqldb 1024 Oct 15 19:43 filler
-rw-rw-r-- 1 root mysqldb 1512 Oct 29 23:56 log-files
-rw-rw---- 1 mysqldb mysqldb 13 Oct 29 23:58 update.index
-rw-rw---- 1 mysqldb mysqldb 5 Oct 29 23:58 raq804.uk2net.com.pid
-rw-rw-r-- 1 mysqldb mysqldb 83 Oct 29 23:58 raq804.uk2net.com.err
-rw------- 1 mysqldb mysqldb 0 Oct 29 23:59 update.log
drwxr-x--- 6 mysqldb mysqldb 1024 Oct 29 23:59 .
-rw-rw---- 1 mysqldb mysqldb 5961241 Oct 29 23:59 update.log.1
[root@raq804 data]# l -rt
total 7928
drwxr-x--- 2 mysqldb mysqldb 1024 May 10 11:41 test
drwxr-x--- 2 mysqldb mysqldb 1024 Jul 31 01:41 mysql
drwxrwxr-x 3 root root 1024 Oct 15 19:27 ..
drwx------ 2 mysqldb mysqldb 1024 Oct 15 19:43 filler
-rw-rw-r-- 1 root mysqldb 1512 Oct 29 23:56 log-files
-rw-rw---- 1 mysqldb mysqldb 13 Oct 29 23:58 update.index
-rw-rw---- 1 mysqldb mysqldb 5 Oct 29 23:58 raq804.uk2net.com.pid
-rw-rw-r-- 1 mysqldb mysqldb 83 Oct 29 23:58 raq804.uk2net.com.err
-rw------- 1 mysqldb mysqldb 0 Oct 29 23:59 update.log
drwxr-x--- 6 mysqldb mysqldb 1024 Oct 29 23:59 .
-rw-rw---- 1 mysqldb mysqldb 8074121 Oct 29 23:59 update.log.1
There is no error messages in 'raq804.uk2net.com.err'
I hope thats enough information required. If you have any questions, pls
send me a mail
>Fix:
I have run the same tests using the standard query log and this works
successfully when you specify a filename (i.e. in my.cnf the line:
log=query.log). This problem seems to only affect the binary update log.
>Submitter-Id: <submitter ID>
>Originator: Administrator
>Organization:
<organization of PR author (multiple lines)>
>MySQL support: [none | licence | email support | extended email support ]
>Synopsis: <synopsis of the problem (one line)>
>Severity: <[ non-critical | serious | critical ] (one line)>
>Priority: <[ low | medium | high ] (one line)>
>Category: mysql
>Class: <[ sw-bug | doc-bug | change-request | support ] (one line)>
>Release: mysql-3.23.38 (Official MySQL binary)
>Environment:
<machine, os, target, libraries (multiple lines)>
System: Linux raq804.uk2net.com 2.2.14C10 #3 Wed Jun 21 15:05:10 JST 2000
i586 unknown
Architecture: i586
Some paths: /usr/bin/perl /usr/bin/make /usr/bin/gmake /usr/bin/gcc
/usr/bin/cc
GCC: Reading specs from
/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/specs
gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)
Compilation info: CC='gcc' CFLAGS='-O3 -mpentium ' CXX='gcc'
CXXFLAGS='-O3 -mpentium -felide-constructors' LDFLAGS='-static'
LIBC:
lrwxrwxrwx 1 root root 13 May 1 2001 /lib/libc.so.6 ->
libc-2.1.3.so
-rwxr-xr-x 1 root root 4101836 Sep 5 2000 /lib/libc-2.1.3.so
-rw-r--r-- 1 root root 20273284 Sep 5 2000 /usr/lib/libc.a
-rw-r--r-- 1 root root 178 Sep 5 2000 /usr/lib/libc.so
Configure command: ./configure --prefix=/usr/local/mysql
'--with-comment=Official MySQL binary' --with-extra-charsets=complex --wit
h-server-suffix= --enable-assembler --with-mysqld-ldflags=-all-static --with
-client-ldflags=-all-static --disable-shared
Perl: This is perl, version 5.005_03 built for i386-linux
---------------------------------------------------------------------
Before posting, please check:
http://www.mysql.com/manual.php (the manual)
http://lists.mysql.com/ (the list archive)
To request this thread, e-mail <[EMAIL PROTECTED]>
To unsubscribe, e-mail <[EMAIL PROTECTED]>
Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php