bitsCN.com
mysql重命名数据库
SmartB2B 是一款基于PHP、MySQL、Smarty的B2B行业电子商务网站管理系统,系统提供了供求模型、企业模型、产品模型、人才招聘模型、资讯模型等模块,适用于想在行业里取得领先地位的企业快速假设B2B网站,可以运行于Linux与Windows等多重服务器环境,安装方便,使用灵活。 系统使用当前流行的PHP语言开发,以MySQL为数据库,采用B/S架构,MVC模式开发。融入了模型化、模板
发现这不是一个省力的活。如果你的MySQL版本是5.1.7之后,并且是5.1.23之前,有一种简单的方法可以用:
RENAME {DATABASE | SCHEMA} db_name TO new_db_name;
但这种方法并不可靠,可能会造成数据的丢失,不建议使用。对此官方文档的说明(http://dev.mysql.com/doc/refman/5.1/en/rename-database.html):
However, use of this statement could result in loss of database contents, which is why it was removed. Do not use RENAME DATABASE in earlier versions in which it is present.
意思是,这招数不安全,5.1.23以后的版本就不能用这语句了。
除此之外,还有一些折衷的办法,大致上都是先用mysqldump导出数据,创建新的数据库然后导入数据,然后drop掉旧的库。
mysqladmin create spm
mysqldump SPM | mysql spm
如果你有phpmyadmin,可以点到“操作”的tab,有一项是“将数据库改名为”,此处略去1000字。
ps: MySQL官方文档有提到 ALTER DATABASE db_name UPGRADE DATA DIRECTORY NAME ,这个是用来解决5.0和5.1版本升级后数据库名称显示的问题,跟重命名不是一回事。
bitsCN.com









