眾所周知Mysql5.1.46默認引擎為Myisam,那如何開啟InnoDB引擎呢?本人在安裝數據庫並開啟InnoDB引擎時出現不少錯誤,先一一列舉僅供大家參考。
系統:
CentOS release 5.4 (Final)
軟件:
MySQL-server-community-5.1.46-1.rhel5
MySQL-shared-compat-5.1.37-0.rhel5
MySQL-client-community-5.1.46-1.rhel5
2. 開啟InnoDB報錯
在配置文件中添加以下內容
#cat /etc/my.cnf
default-storage-engine=innodb
default-table-type=innodb
default-character-set=utf8
character-set-server=utf8
collation-server=utf8_general_ci
啟動失敗日志
#tail -f /var/log/mysqld.log
3. 故障排查
查看myql是否支持InnoDB引擎
mysql> SHOW variables like "have_%";
+-------------------------+----------+
| Variable_name | Value |
+-------------------------+----------+
| have_community_features | YES |
| have_compress | YES |
| have_crypt | YES |
| have_csv | YES |
| have_dynamic_loading | YES |
| have_geometry | YES |
| have_innodb | NO |
| have_ndbcluster | NO |
| have_openssl | DISABLED |
| have_partitioning | YES |
| have_query_cache | YES |
| have_rtree_keys | YES |
| have_ssl | DISABLED |
| have_symlink | YES |
+-------------------------+----------+
14 rows in set (0.00 sec)
安裝innodb插件提示初始化錯誤
問題:
mysql> INSTALL PLUGIN InnoDB SONAME 'ha_innodb_plugin.so';
ERROR 1123 (HY000): Can't initialize function 'InnoDB'; Plugin initialization function failed.
解決:
把ibdata1,ib_datafile0,ib_datafile1重命名,讓系統重新生成數據文件和兩個日志文件;