查看MySQL提供什么存儲引擎:
mysql> show engines;
查看MySQL當前默認的存儲引擎:
mysql> show variables like '%storage_engine%';
查詢wpsql庫
mysql> use wpsql;
列出當前庫所有表名
mysql> show tables;
你要看wp_posts表用了什么引擎(在顯示結果里參數(shù)engine后面的就表示該表當前用的存儲引擎):
mysql> show create table wp_posts;
將wp_posts表修為InnoDB存儲引擎(也可以此命令將InnoDB換為MyISAM):
mysql> ALTER TABLE wp_posts ENGINE=INNODB;
如果要更改整個數(shù)據(jù)庫表的存儲引擎,一般要一個表一個表的修改,比較繁瑣,可以采用先把數(shù)據(jù)庫導出,得到SQL,把MyISAM全部替換為INNODB,再導入數(shù)據(jù)庫的方式。
轉換完畢后重啟mysql
service mysqld restart
如果要把數(shù)據(jù)庫從MyISAM修改成InnoDB需要做以下工作:
因為MySQL沒有安裝或沒有使用InnoDB引擎,可以通過SQL命令查看引擎:
SHOW ENGINES;
結果如果是InnoDB| NO 說明未開啟。
如果沒有安裝,則需要打補丁,或重新安裝該模塊,如果安裝,可參考以下解決辦法。
檢查my.cnf配置(windows為my.ini):
如果出現(xiàn)“#skip-innodb”則將“#”去掉,重啟MySQL;
如果第一條無法解決,加上配置:default-storage-engine=InnoDB 再重啟MySQL。
如果第二條仍無法解決,則檢查InnoDB引擎的配置是否有:
innodb_data_file_path = ibdata1:200M:autoextend
innodb_buffer_pool_size = 2G
innodb_additional_mem_pool_size = 2M
innodb_log_file_size = 256M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 120
這些配置參數(shù)根據(jù)本機實際情況配置。