MYSQL5.5 INNODB优化

希望为INNODB优化mysql5.5数据库 . 我试过这个链接

注意:数据库还包含MYISAM表 .

Howto: Clean a mysql InnoDB storage engine?

按照说明我删除了所有数据库以及ibdata *和ib_logfile *并在my.cnf中进行了更改

[mysqld]
innodb_file_per_table
innodb_flush_method=O_DIRECT
innodb_log_file_size=1G
innodb_buffer_pool_size=4G

现在,在恢复备份时,不仅mysql将INNODB表存储在单独的文件中,而且还在为MYISAM表执行此操作 . 这导致MYISAM数据库无法使用 .

当我试图访问有MYISAM表的网站时,我收到错误 - Error displaying the error page: Application Instantiation Error

无法解释为什么mysql将MYISAM表存储在单独的文件中 . 谢谢 .

回答(1)

2 years ago

  • AFAIK MyISAM始终将表存储在自己的文件中(每个表3个文件:.MYI,.MYD和.frm) .

  • 删除ibdata文件是 not allowed . 你有该文件的备份吗?要从每个表单个文件移动到文件,您需要按照此处的说明进行操作:http://dev.mysql.com/doc/refman/5.0/en/innodb-multiple-tablespaces.html(参见"Enabling and Disabling Multiple Tablespaces"下)