1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
<?php
//連接數(shù)據(jù)庫
$host
=
'localhost'
;
$user
=
'mysql_username'
;
??
//管理賬戶
$passwd
=
'mysql_password'
;
//密碼
$db
=
'wordpressdb'
;
??
//數(shù)據(jù)庫名稱
$link
=
mysql_connect
(
$host
,
$user
,
$passwd
)
;
if
(
!
$link
)
{
die
(
'Could not connect: '
.
mysql_error
(
)
)
;
}
?
mysql_select_db
(
$db
,
$link
)
or
die
(
'can\'t use'
.
$db
.
mysql_error
(
)
)
;
$result
=
mysql_query
(
"show tables "
)
or
die
(
mysql_error
(
)
)
;
while
(
$row
=
mysql_fetch_row
(
$result
)
)
{
#echo $row[0];
#var_dump($row);
echo
"$row[0] \n"
;
mysql_query
(
"alter table??$row[0] type='MYISAM'"
)
or
die
(
mysql_error
(
)
)
;
}
#var_dump($result);
mysql_close
(
$link
)
;
?>
|
?
?
MySQL 從 5.5 之后默認(rèn)引擎是 InnoDB,InnoDB 比 MyISAM 要好不少,但是畢竟龐大臃腫,所以以前都是默認(rèn) MyISAM,軟硬件資源日漸豐富之后,InnoDB 就被重視了。
如果是老的數(shù)據(jù)庫,用的是 MyISAM 引擎,可以用順利轉(zhuǎn)換到 InnoDB 引擎。MySQL 提供了一個轉(zhuǎn)換腳本(其實默認(rèn)是用來給你往回轉(zhuǎn)的 InnoDB –> MyISAM),可以在兩種引擎中互換,用法很簡單,具體可以自己看 help,這里舉例一個剛剛轉(zhuǎn)換過來的表:
1
2
3
4
|
mysql_convert_table_format
yourdb
--
user
=
root
--
password
=
'youpw'
-
f
--
socket
=
'/var/run/mysqld/mysqld.sock'
yourdb
是要轉(zhuǎn)換的數(shù)據(jù)庫名
yourpw
是
root
密碼
socket
可以在
my
.
cnf
文件中找到。
|
注意事項:
1、MySQl 5.5 以后,mysql_convert_table_format 默認(rèn)是將 InnoDB 轉(zhuǎn)換成 MyISAM,如果要反過來轉(zhuǎn),用 –engine= INNODB 是不行的(莫名其妙就是不行),要直接修改 /usr/bin/mysql_convert_table_format 腳本,將里頭 $opt_engine=”MYISAM”; 改成?$opt_engine=”INNODB”; ?然后運行就可以了。
2、不要隨便轉(zhuǎn)換 MySQL 自己的數(shù)據(jù)庫(mysql),這個數(shù)據(jù)庫必須是 MyISAM 引擎的。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
