Monday 19 September 2011

MySQL query failed: Incorrect information in file: './psa/misc.frm'

Sometimes we will get the following error when we tried
to access the Plesk control panel.

ERROR: PleskMainDBException
MySQL query failed:

Incorrect information in file: './psa/misc.frm'

0: common_func.php3:168
db_query(string 'select param, val from misc')
1: common_func.php3:587
get_param(string 'mysql41_compatible')
2: common_func.php3:484
db_set_names()
3: common_func.php3:463
db_connect_real(string 'localhost', string 'admin',
string '*************', 'psa')
4: common_func.php3:443
db_connect()
5: auth.php3:90

Even a restart of the plesk service will not work:

# /etc/init.d/psa restart
Unable to query parameter by query
select val from misc where param='mysql41_compatible':Incorrect
information in file: './psa/misc.frm'
Unable to query parameter by
query select val from misc where param='mysql41_compatible':Incorrect
information in file: './psa/misc.frm'
Mysql error: Incorrect
information in file: './psa/key_history.frm'
Processing config
directory: /usr/local/psa/admin/conf/httpsd.*.include
Syntax OK
/usr/local/psa/admin/bin/httpsdctl
restart: httpd restarted
ERROR 1033 (HY000) at line 1: Incorrect
information in file: './psa/sessions.frm'


so this is a mysqld failing to start properly problem. to fix this,
go to your mysql datadir and see if the sizes of your innodb log files
match those in your .cnf. we usually set innodb_log_file_size = 256M
and innodb_log_buffer_size = 256M in /etc/my.cnf.

if they don't match, stop mysqld, remove the ib_logfile0 and
ib_logfile1 files, and start mysqld. be careful not to delete the
ibdata1 or ibdata2 files or you lose your data.

avoid using rm -r ib*

innodb will recreate the log files to match your .cnf and mysqld
now becomes available for plesk.



No comments: