重命名mysql数据库?

12

如何使用查询重命名MySQL数据库名称?

我尝试通过phpmyadmin重命名数据库,并收到以下错误:

SQL query:

    RENAME DATABASE test TO test_bkp

MySQL said: 

    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DATABASE test To test_bkp' at line 1

3
phpMyAdmin 的主要目的是提供一个图形用户界面,这样你就不需要亲自编写这样的查询语句。 - Osiris
9个回答

16

在phpmyadmin中,您只需单击数据库,然后进入“操作”选项卡即可将其重命名。


2
最新的XAMPP已经移除了该内容。 - xkeshav
1
不是的,它取决于MySQL版本和PMA版本。 - xkeshav

11

此处所述:

此语句于MySQL 5.1.7中添加,但被发现存在危险性,在MySQL 5.1.23中被删除。该语句旨在实现将先前版本的数据库升级为基于5.1实现的编码方式,以便将数据库名称映射到数据库目录名称(请参阅第9.2.3节,“标识符到文件名的映射”)。然而,使用此语句可能会导致丢失数据库内容,这就是为什么它被删除的原因。不要在具有该语句的早期版本中使用RENAME DATABASE。

您可以将所有数据导入新数据库,然后删除旧数据库。

也可以使用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`;

5.1手册已不再在Oracle网站上提供。(但可能可以在其他地方找到。)请随意在http://bugs.mysql.com/86289上添加评论。或者至少点击“影响我”。 - Rick James

2

我收到了以下错误信息:SQL查询:ALTER DATABASE test_bkp UPGRADE DATA DIRECTORY NAME;MySQL显示:#1221- ALTER DATABASE UPGRADE DATA DIRECTORY NAME和名称的使用不正确。 - Ramesh Moorthy

0

嗯,重命名数据库是可能的,但这里是重命名选项背后的逻辑。

1. Xampp creates a new database with the name
2. Xampp copies all table and data in it from the previous database
3. Xampp migrates data to the new database table and drops the previous database

重命名数据库的步骤

1. Click the Operations option in the nav pane
2. Find the ' Rename database to ' Spot, and input new name in the input field
3. Tick the ' Adjust privileges ' checkbox
4. Click go

希望这个能够奏效!:)


0

你可以在 MySQL < 5.1.23 中使用以下方法实现:

RENAME {DATABASE | SCHEMA} db_name TO new_db_name;

在以后的版本中,请查看:

ALTER {DATABASE | SCHEMA} [db_name]


我尝试了这个查询,但仍然出现错误:SQL 查询语句:RENAME { DATABASE | SCHEMA } test TO test_bkp;MySQL 报错:#1064 - 您的 SQL 语法有误,请检查与您的 MySQL 服务器版本相对应的手册,以获取正确的语法使用方法。在第一行附近出现了“{DATABASE | SCHEMA} test TO test_bkp”的错误。 - Ramesh Moorthy
嗨,{DATABASE | SCHEMA} 只是一个占位符,请使用 DATABASE。 - Alex2php

0

好的,如果重命名选项没有显示,使用phpMyAdmin克隆数据库的快速方法如下:

  • 打开要复制的数据库
  • 点击"操作"标签页。
  • 在"复制数据库到:"一栏中输入新数据库的名称。 选择“复制结构和数据”以复制所有内容或“仅结构” 勾选"在复制前创建数据库"来创建一个新的数据库。 勾选"添加AUTO_INCREMENT值"。 点击“Go”按钮继续。 注意:在删除旧数据库之前,请确保密码也已复制。

0
在WAMP服务器中, 点击数据库, 然后选择您的数据库, 从标题菜单中选择操作, 创建新名称, 它将重命名数据库, 但实际上它会创建一个新的数据库副本,复制所有数据,然后删除旧的数据库。

0
  1. 导出当前数据库。
  2. 创建一个你想要的名称的新数据库。
  3. 将旧数据库文件导入到新数据库中。

-1

你可以导出你的数据库表,创建一个新的数据库并将表导入到新的数据库中! 此外,你也可以使用phpmyadmin重命名你的数据库,只需选择你的数据库,点击操作选项卡并重命名你的数据库! 最后一种方法是创建一个新的数据库并使用它,但你可能会丢失你的数据!

CREATE DATABASE new_db_name / DROP DATABASE old_db_name

Hamid,你看了Salman的帖子吗?他已经提到了那个想法。 - Ramesh Moorthy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接