重命名mysql数据库?

10 浏览
0 Comments

重命名mysql数据库?

我该如何使用查询语句重命名MySQL数据库名?

我尝试通过phpmyadmin重命名数据库,但出现以下错误:

SQL查询:

RENAME DATABASE test TO test_bkp

MySQL提示:

#1064 - SQL语法错误;请检查与您的MySQL服务器版本相对应的手册,以了解正确的语法用法,位于第1行的'DATABASE test To test_bkp'附近。

0
0 Comments

在MySQL 5.1.7版本中引入了RENAME DATABASE语句,该语句的目的是为了将旧版本的数据库升级到MySQL 5.1中实现的用于将数据库名称映射到数据库目录名称的编码。然而,使用该语句可能导致数据库内容的丢失,这就是为什么在MySQL 5.1.23中将其移除的原因。因此,在早期版本中不要使用RENAME DATABASE语句。

解决方法是将所有数据导入到一个新的数据库中,然后删除旧数据库。另一种方法是使用RENAME TABLE语句,将表从一个数据库重命名到另一个数据库。但是需要注意一些问题。

以下是一个使用RENAME TABLE语句的示例代码:

CREATE DATABASE `test_bkp`;
RENAME TABLE 
`test`.`table1` TO `test_bkp`.`table1`,
`test`.`table2` TO `test_bkp`.`table2`,
`test`.`table3` TO `test_bkp`.`table3`;

需要注意的是,MySQL 5.1的官方文档已经不再在Oracle的网站上提供,但可能可以在其他地方找到。可以在bugs.mysql.com/86289上添加评论或点击“Affects me”来提供反馈。

0
0 Comments

原因:开发者禁用了MySQL数据库的重命名功能。

解决方法:可以使用复制(然后删除)而不是重命名的方式来实现。可以参考Stack Overflow上的一个问题:Cloning a MySQL database on the same MySql instance

具体错误信息如下:

SQL query: ALTER DATABASE test_bkp UPGRADE DATA DIRECTORY NAME;
MySQL said: #1221 - Incorrect usage of ALTER DATABASE UPGRADE DATA DIRECTORY NAME and name

文章如下:

MySQL数据库的重命名功能被开发者禁用了。具体文档可以参考:http://dev.mysql.com/doc/refman/5.1/en/rename-database.html。此外,建议使用复制(然后删除)的方式来实现重命名,可以参考Stack Overflow上的一个问题:Cloning a MySQL database on the same MySql instance

具体错误信息如下:

SQL query: ALTER DATABASE test_bkp UPGRADE DATA DIRECTORY NAME;
MySQL said: #1221 - Incorrect usage of ALTER DATABASE UPGRADE DATA DIRECTORY NAME and name

0
0 Comments

在phpmyadmin中,您只需点击您的数据库,然后转到操作选项卡,这样就可以重命名它。

这也在最新的XAMPP中被移除了。

不,这取决于MySQL版本和PMA版本。

0