原文链接:http://club.linwan.info/thread-115518-1-1.html
如果是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];
一个个执行下来之后表就转到新的库里面了.
本文介绍了在MySQL中如何更改数据库名称的方法,特别是针对MyISAM和InnoDB存储引擎的不同操作方式。对于MyISAM,只需简单地重命名数据目录下的文件夹;而对于InnoDB,则需通过导出和导入数据或改变存储引擎的方式来实现。文章提供了详细的步骤说明。

被折叠的 条评论
为什么被折叠?



