7 回答

TA貢獻1811條經驗 獲得超4個贊
常見的主要有三種方法:
如果所有表都是MyISAM類型的話,可以直接修改文件夾的名字。
關閉mysql→把data目錄中的db_name目錄重命名為new_db_name→開啟mysql新建數據庫,在新的數據庫里重命名所有舊數據庫中的表,再刪除舊的數據庫。具體操作命令如下:創建新的數據庫→重命名數據表名稱→刪除舊的數據庫。
CREATE DATABASE new_db_name;
RENAME TABLE db_name.table1 TO new_db_name.table1,db_name.table2 TO new_db_name.table2;
DROP DATABASE db_name;利用mysqldump命令從舊的數據導出數據,再導入新數據庫。具體操作命令如下:導出數據→創建新的數據庫→導入數據→刪除舊的數據庫。
mysqldump -u root -p -h ip db_name > db_name_dump.SQL
mysql -u root -p -h ip -e “CREATE DATABASE new_db_name”
mysql -u root -p -h ip new_db_name < db_name_dump.SQL
mysql -u root -p -h ip -e “DROP DATABASE db_name”

TA貢獻1895條經驗 獲得超3個贊
提供三種方法:
1. RENAME DATABASE db_name TO new_db_name
這個。。這個語法在mysql 5.1.7中被添加進來,到了5.1.23又去掉了。
據說有可能丟失數據。還是不要用的好。
2.如果所有表都是MyISAM類型的話,可以改文件夾的名字
關閉mysqld
把data目錄中的db_name目錄重命名為new_db_name
開啟mysqld
3.重命名所有的表
CREATE DATABASE new_db_name;
RENAME TABLE db_name.table1 TO new_db_name.table1,
db_name.table2 TO new_db_name.table2;
DROP DATABASE db_name;

TA貢獻1906條經驗 獲得超3個贊
mysql中沒有直接修改數據庫的命令,如果想做可以變相實現,就是用mysqldump -h ip -u username -ppasswd databases>D:/back.sql用這個命令備份數據庫,然后創建新的數據庫create databases new_databases;再上傳備份數據庫mysql -u username -ppasswd new_databases<D:/back.sqlok,刪除舊的數據庫就好了

TA貢獻1817條經驗 獲得超14個贊
如果所有表都是MyISAM類型的話,可以改數據庫文件夾的名字
把\MySQL\data目錄中的db_name目錄重命名為new_db_name
完了之后重命名所有的表
rename table srcdb.[tablename] to trgdb.[tablename];
一個個執行下來之后表就轉到新的庫里面了.
添加回答
舉報