如何重命名数据库而不删除或移动mysql中的表?

时间:2010-09-13 06:30:28

标签: php sql mysql

  

可能重复:
  How do I quickly rename a mysql database (change schema name)?

你好, plz帮我在mysql中重命名数据库名称

2 个答案:

答案 0 :(得分:2)

您不应使用rename database因为它会导致数据丢失http://dev.mysql.com/doc/refman/5.1/en/rename-database.html

而是使用alter database语法http://dev.mysql.com/doc/refman/5.1/en/alter-database.html

答案 1 :(得分:1)

您可以选择以下任何一种方法在MySQL中重命名数据库。

如果您可以访问MySQL存储其数据库的目录。根据默认的MySQL安装,这通常位于安装MySQL的目录下的数据目录中。在数据目录下找到所需数据库的名称,并根据需要重命名。注意:必须在重命名数据库之前停止MySQL Server,并且可以在此操作之后重新启动它。在这种情况下,您还可以在重命名的数据库上再次授予权限。这仅适用于MyISAM表。如果您有使用其他存储引擎的表而不是使用下面描述的方法。

另一种最安全的方法是使用mysqldump实用程序备份旧数据库。创建具有所需名称的新数据库,然后使用mysql实用程序在此数据库下还原转储的数据库。最后,使用DROP DATABASE old_database_name;命令摆脱旧数据库。 这是最安全的方法。