myisamchk
If you’re reading this, it’s probably because you’re trying to run myisamchk
on a large table and you want to set the --sort_buffer_size
to some large value. That’s advisable, of course.
However, it seems that some versions of MySQL don’t understand a 2-digit value for that parameter.
I was trying to do the following:
myisamchk -f -r --update-state --key_buffer_size=4G --sort_buffer_size=16G --read_buffer_size=32M --write_buffer_size=32M /var/sql/myisam-temp/mastersitedb/applicants_master_search
- recovering (with sort) MyISAM-table '/var/sql/myisam-temp/mastersitedb/applicants_master_search'
Data records: 0
- Fixing index 1
myisamchk: error: myisam_sort_buffer_size is too small
MyISAM-table '/var/sql/myisam-temp/mastersitedb/applicants_master_search' is not fixed because of errors
Try fixing it by using the --safe-recover (-o), the --force (-f) option or by not using the --quick (-q) flag
If you’re getting an error like that, try using --sort_buffer_size=9G
. It took me about 20 minutes to figure that out (which is forever when trying to recover a DB). Hopefully this helps you. :)
Also, --myisam_sort_buffer_size
is not a valid parameter, no matter how much the error message leads you to believe that it is.