From: Hassan on

Dear everyone,
I
just love list and I think I should share this information on how to
fix MySQL tables that are in use and according to the articles:

http://articles.techrepublic.com.com/5100-10878_11-5193721.html

and

http://tgrove.com/2007/12/02/innodb-operating-system-error-number-13-in-a-file-operation/

- First you should goto the corrupt databse folder in "data"
- either fix all tables or if you know the table name:
#> myisamchk -r *.MYI
#> myisamchk -r /path/to/table.MYI

- The, look for these lines, uncomment and change the paths
innodb_data_home_dir = /usr/local/mysql/data/
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /var/db/mysql/
innodb_log_arch_dir = /usr/local/mysql/data/

- And now fix your permissions on the DATA directory.

#>chown -R mysql:mysql /usr/local/mysql

- or if u'd like more specific solution and when u get "error number 13" on starting up the Engine, then u must type this command:
#> chown mysql:mysql /usr/local/mysql/ibdata1

And u're saved :)