如何修改MySQL数据库名称

如题所述

修改MySQL数据库名称的方法如下:

1.语句修改法:

RENAME DATABASE db_name TO new_db_name
这个语法在mysql 5.1.7中被添加进来,到了5.1.23又去掉了。

2.如果所有表都是MyISAM类型的话,可以改文件夹的名字
把data目录中的db_name目录重命名为new_db_name


3.重命名所有的表
代码如下:


4. mysqldump导出数据再导入

代码如下:



5.使用shell脚本重命名所有的表

代码如下:

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-09-12
如果是MyISAM的话.只要修改DATA目录下面的那个库名的文件夹的名字就OK了

如果是INNODB的话.其实是无法修改库名的.网上瞎咧咧的什么RENAME DATABASE或者ALTER DATABASE都是不行的

一种方法是比较保守的.直接把老库的内容mysqldump到新库里面

还有一种类似上面方法.先alter table 的存储引擎到MyISAM,然后改了库目录的名字,然后再改回来INNODB.

最后一种方法还是比较好的.这边详细写一下.

假设源库名是’srcdb’,目标库名是’trgdb’
首先创建目标库
create database trgdb;
获取所有源库的表名
use information_schema;
select table_name from TABLES where TABLE_SCHEMA=’srcdb’;
然后按照以下命令一个个修改
rename table srcdb.[tablename] to trgdb.[tablename];
一个个执行下来之后表就转到新的库里面了.本回答被提问者和网友采纳
第2个回答  2018-07-31

假设源库名是’srcdb’,目标库名是’trgdb’
首先创建目标库
create database trgdb;
获取所有源库的表名
use information_schema;
select table_name from TABLES where TABLE_SCHEMA=’srcdb’;
然后按照以下命令一个个修改
rename table srcdb.[tablename] to trgdb.[tablename];
一个个执行下来之后表就转到新的库里面了.

本回答被网友采纳
第3个回答  2019-07-10
最安全的做法是进入到mysql安装目录,修改库名。
比如是默认安装的,那么位置在/var/lib/mysql/目录下;目录下的所有目录都是库名,直接用mv更改就可以;
提示:
如果进入mysql用命令改会发生未知错误的,而且新版本也不支持这种改法了!
第4个回答  2020-10-15
相似回答