我得到了一个MySQL数据库文件,我需要将其恢复为Windows Server 2008机器上的数据库。
我尝试使用MySQL管理员,但我得到以下错误:
所选文件由 Mysqldump,不能恢复 这个应用程序。
我如何让它工作?
我得到了一个MySQL数据库文件,我需要将其恢复为Windows Server 2008机器上的数据库。
我尝试使用MySQL管理员,但我得到以下错误:
所选文件由 Mysqldump,不能恢复 这个应用程序。
我如何让它工作?
当前回答
运行命令进入DB
# mysql -u root -p
输入用户密码,然后创建新DB
mysql> create database MynewDB;
mysql> exit
然后退出。Afetr。执行此命令
# mysql -u root -p MynewDB < MynewDB.sql
然后进入db并键入
mysql> show databases;
mysql> use MynewDB;
mysql> show tables;
mysql> exit
就是这样........您的转储将从一个DB恢复到另一个DB
或者还有另一种转储恢复的方法
# mysql -u root -p
然后进入db并键入
mysql> create database MynewDB;
mysql> show databases;
mysql> use MynewDB;
mysql> source MynewDB.sql;
mysql> show tables;
mysql> exit
其他回答
假设你已经创建了空白数据库,你也可以像这样从命令行恢复数据库:
mysql databasename < backup.sql
mysql -u username -p -h localhost DATA-BASE-NAME < data.sql
看这里——第三步:这样你就不需要USE语句了
您可以尝试SQLyog“执行SQL脚本”工具导入SQL /dump文件。
作为前面回答的一个具体例子:
我需要恢复备份,以便导入/迁移到SQL Server。我只安装了MySql,但没有把它注册为服务,也没有把它添加到我的路径中,因为我不需要让它一直运行。
我用windows资源管理器把我的转储文件放在C:\code\dump.sql。然后从开始菜单项中打开MySql。创建DB,然后运行source命令,使用完整路径,如下所示:
mysql> create database temp
mysql> use temp
mysql> source c:\code\dump.sql
如果要恢复的数据库还不存在,则需要首先创建它。
在命令行中,如果你在包含转储文件的同一个目录中,使用这些命令(使用适当的替换):
C:\> mysql -u root -p
mysql> create database mydb;
mysql> use mydb;
mysql> source db_backup.dump;