Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have a mysql replication slave on linux. I'm doing a mysqldump to backup the database. I'm pointing it at the slave server to spread the load. The mysqldump options I'm using include --flush-logs and that's causing the mysql server to die. It gets a Signal 11 (ie segfault). When I do it without the --flush-logs, everything works. Why is this?

Update: This is the relevant section of the /var/log/syslog (which is where the mysql error messages go on debian systems)

Jun 24 11:01:17 db2 mysqld[30673]: mysqld got signal 11;
Jun 24 11:01:17 db2 mysqld[30673]: This could be because you hit a bug. It is also  possible that this binary
Jun 24 11:01:17 db2 mysqld[30673]: or one of the libraries it was linked against is corrupt, improperly built,
Jun 24 11:01:17 db2 mysqld[30673]: or misconfigured. This error can also be caused by malfunctioning hardware.
Jun 24 11:01:17 db2 mysqld[30673]: We will try our best to scrape up some info that will hopefully help diagnose
Jun 24 11:01:17 db2 mysqld[30673]: the problem, but since we have already crashed, something is definitely wrong
Jun 24 11:01:17 db2 mysqld[30673]: and this may fail.
Jun 24 11:01:17 db2 mysqld[30673]: 
Jun 24 11:01:17 db2 mysqld[30673]: key_buffer_size=16777216
Jun 24 11:01:17 db2 mysqld[30673]: read_buffer_size=131072
Jun 24 11:01:17 db2 mysqld[30673]: max_used_connections=2
Jun 24 11:01:17 db2 mysqld[30673]: max_connections=100
Jun 24 11:01:17 db2 mysqld[30673]: threads_connected=1
Jun 24 11:01:17 db2 mysqld[30673]: It is possible that mysqld could use up to 
Jun 24 11:01:17 db2 mysqld[30673]: key_buffer_size + (read_buffer_size + sort_buffer_size)*max_connections = 233983 K
Jun 24 11:01:17 db2 mysqld[30673]: bytes of memory
Jun 24 11:01:17 db2 mysqld[30673]: Hope that's ok; if not, decrease some variables in the equation.
Jun 24 11:01:17 db2 mysqld[30673]: 
Jun 24 11:01:17 db2 mysqld_safe[31409]: Number of processes running now: 0
Jun 24 11:01:17 db2 mysqld_safe[31411]: restarted
share|improve this question
    
Can you post the contents of your mysqld.log when mysqld segfaults ? –  Dave Cheney Jun 24 '09 at 11:11
    
Check permissions on /var/lib/mysql –  LiraNuna Sep 2 '09 at 23:24

2 Answers 2

Given the amount of memory is around 200MB, I'm guessing you haven't run out of memory. You can check dmesg to see if the machine has run out of memory.

If other processes die with a similar problem, or with a bus error, then it's possible that you've got faulty memory. You could use memtest86 to check.

Otherwise, I'd say you've found a bug in mysql. You could try upgrading to the latest version of MySQL, or if you are on the latest, downgrade and see if you get the same problem. If you do, then I'd suggest filing a bug with MySQL.

share|improve this answer

Which version of mysql?

Do you have either option enabled "expire-log-days" or "log-bin" in your my.cnf file?

There are a few known bugs with the --flush-log option causing crashes with log rotations, dumps, etc.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.