真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

mysql數(shù)據(jù)庫(kù)改名的三種方法

前不久去面試,被問(wèn)到Innodb引擎的表如何改數(shù)據(jù)庫(kù)名,當(dāng)時(shí)我也只回答了MyISAM改如何操作,被一些細(xì)節(jié)問(wèn)題打敗,真是操蛋。

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)建站!專(zhuān)注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、小程序開(kāi)發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶(hù)創(chuàng)新互聯(lián)還提供了河北免費(fèi)建站歡迎大家使用!

如果表示MyISAM那么可以直接去到數(shù)據(jù)庫(kù)目錄mv就可以。

Innodb完全不行,自己測(cè)試過(guò),會(huì)提示相關(guān)表不存在。

 

第一種方法:

RENAME database olddbname TO newdbname

這個(gè)是5.1.7到5.1.23版本可以用的,但是官方不推薦,會(huì)有丟失數(shù)據(jù)的危險(xiǎn)

 

第二種方法:

1.創(chuàng)建需要改成新名的數(shù)據(jù)庫(kù)。
2.MySQLdum 導(dǎo)出要改名的數(shù)據(jù)庫(kù)
3.刪除原來(lái)的舊庫(kù)(確定是否真的需要)
當(dāng)然這種方法雖然安全,但是如果數(shù)據(jù)量大,會(huì)比較耗時(shí),哎,當(dāng)時(shí)連這種方法都沒(méi)有想到,真有想死的沖動(dòng)。

 

第三種方法:

我這里就用一個(gè)腳本,很簡(jiǎn)單,相信大家都看的懂

復(fù)制代碼

#!/bin/bash
# 假設(shè)將sakila數(shù)據(jù)庫(kù)名改為new_sakila
# MyISAM直接更改數(shù)據(jù)庫(kù)目錄下的文件即可
mysql -uroot -p123456 -e 'create database if not exists new_sakila'

list_table=$(mysql -uroot -p123456 -Nse "select table_name from information_schema.TABLES where TABLE_SCHEMA='sakila'")

for table in $list_table
do
    mysql -uroot -p123456 -e "rename table sakila.$table to new_sakila.$table"
done

這里用到了rename table,改表名的命令,但是如果新表名后面加數(shù)據(jù)庫(kù)名,就會(huì)將老數(shù)據(jù)庫(kù)的表移動(dòng)到新的數(shù)據(jù)庫(kù),所以,這種方法即安全,又快速。


網(wǎng)站欄目:mysql數(shù)據(jù)庫(kù)改名的三種方法
轉(zhuǎn)載來(lái)于:http://weahome.cn/article/ipsjio.html

其他資訊

在線(xiàn)咨詢(xún)

微信咨詢(xún)

電話(huà)咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部