MySQL作為最常用的數(shù)據(jù)庫,經(jīng)常遇到各種各樣的問題。今天要說的就是表存儲引擎的修改。有三種方式,列表如下。
創(chuàng)新互聯(lián)建站是一家集網(wǎng)站建設(shè),鄂州企業(yè)網(wǎng)站建設(shè),鄂州品牌網(wǎng)站建設(shè),網(wǎng)站定制,鄂州網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,鄂州網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
1.真接修改。在數(shù)據(jù)多的時候比較慢,而且在修改時會影響讀取性能。my_table是操作的表,innoDB是新的存儲引擎。
復(fù)制代碼
代碼如下:ALTER
TABLE
my_table
ENGINE=InnoDB
2.導(dǎo)出,導(dǎo)入。這個比較容易操作,直接把導(dǎo)出來的sql文件給改了,然后再導(dǎo)回去。用mysqldump
,楓哥常用的是navicate那樣更容易上手。友情提醒風(fēng)險較大。
3.創(chuàng)建,插入。這個比第一種速度快,
安全性比第二種高,推薦。分2步操作
a.創(chuàng)建表,先創(chuàng)建一個和要操作表一樣的表,然后更改存儲引擎為目標引擎。
復(fù)制代碼
代碼如下:
CREATE
TABLE
my_tmp_table
LIKE
my_table;
ALTER
TABLE
my_tmp_table
ENGINE=InnoDB;
b.插入。為了安全和速度,最好加上事務(wù),并限制id(主鍵)范圍。
復(fù)制代碼
代碼如下:
INSERT
INTO
my_tmp_table
SELECT
*
FROM
my_table;
就到這里,希望對需要的同學(xué)有幫助。
mysql源碼調(diào)用引擎步驟:
1、打開mysql的命令行。
2、輸入數(shù)據(jù)庫密碼。
3、查詢默認數(shù)據(jù)庫引擎。
4、默認的引擎是InnoDB,修改即可。
1、修改表引擎方法\x0d\x0a alter table table_name engine=innodb;\x0d\x0a2、查看系統(tǒng)支持的存儲引擎\x0d\x0a show engines;\x0d\x0a3、查看表使用的存儲引擎\x0d\x0a 兩種方法:\x0d\x0a a、show table status from db_name where name='table_name';\x0d\x0a b、show create table table_name;\x0d\x0a 如果顯示的格式不好看,可以用\g代替行尾分號 \x0d\x0a 有人說用第二種方法不準確\x0d\x0a 我試了下,關(guān)閉掉原先默認的Innodb引擎后根本無法執(zhí)行show create table table_name指令,因為之前建的是Innodb表,關(guān)掉后默認用MyISAM引擎,導(dǎo)致Innodb表數(shù)據(jù)無法被正確讀取。\x0d\x0a4 關(guān)閉Innodb引擎方法\x0d\x0a 關(guān)閉mysql服務(wù): net stop mysql\x0d\x0a 找到mysql安裝目錄下的my.ini文件:\x0d\x0a 找到default-storage-engine=INNODB 改為default-storage-engine=MYISAM\x0d\x0a 找到#skip-innodb 改為skip-innodb\x0d\x0a 啟動mysql服務(wù):net start mysql