我得到了一个MySQL数据库文件,我需要将其恢复为Windows Server 2008机器上的数据库。
我尝试使用MySQL管理员,但我得到以下错误:
所选文件由 Mysqldump,不能恢复 这个应用程序。
我如何让它工作?
我得到了一个MySQL数据库文件,我需要将其恢复为Windows Server 2008机器上的数据库。
我尝试使用MySQL管理员,但我得到以下错误:
所选文件由 Mysqldump,不能恢复 这个应用程序。
我如何让它工作?
当前回答
如果要恢复的数据库还不存在,则需要首先创建它。
在命令行中,如果你在包含转储文件的同一个目录中,使用这些命令(使用适当的替换):
C:\> mysql -u root -p
mysql> create database mydb;
mysql> use mydb;
mysql> source db_backup.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
使用在Linux上创建的200MB转储文件在Windows w/ mysql 5.5上进行恢复,我使用
source file.sql
方法从mysql提示符比用
mysql < file.sql
在命令行,这导致一些错误2006“服务器已经离开”(在windows)
奇怪的是,在(mysql)安装期间创建的服务引用了一个不存在的my.ini文件。我将“大”示例文件复制到my.ini中 我已经按照建议的增加量进行了修改。
我的价值观是
[mysqld]
max_allowed_packet = 64M
interactive_timeout = 250
wait_timeout = 250
我按照下面的步骤来做。
Open MySQL Administrator and connect to server Select "Catalogs" on the left Right click in the lower-left box and choose "Create New Schema" MySQL Administrator http://img204.imageshack.us/img204/7528/adminsx9.th.gif enlarge image Name the new schema (example: "dbn") MySQL New Schema http://img262.imageshack.us/img262/4374/newwa4.th.gif enlarge image Open Windows Command Prompt (cmd) Windows Command Prompt http://img206.imageshack.us/img206/941/startef7.th.gif enlarge image Change directory to MySQL installation folder Execute command: mysql -u root -p dbn < C:\dbn_20080912.dump …where "root" is the name of the user, "dbn" is the database name, and "C:\dbn_20080912.dump" is the path/filename of the mysqldump .dump file MySQL dump restore command line http://img388.imageshack.us/img388/2489/cmdjx0.th.gif enlarge image Enjoy!
你只需要运行这个:
mysql -p -u[user] [database] < db_backup.dump
如果转储包含多个数据库,您应该省略数据库名称:
mysql -p -u[user] < db_backup.dump
要运行这些命令,打开一个命令提示符(在Windows中),并cd到mysql.exe可执行文件所在的目录(你可能需要四处寻找,这取决于你如何安装mysql,即独立或作为WAMP包的一部分)。进入该目录后,您应该能够键入命令。
当我们使用mysqldump创建转储文件时,它包含了一个用于重新创建数据库内容的大型SQL脚本。所以我们通过启动MySQL的命令行客户端来恢复它:
mysql -uroot -p
(root是MySQL的管理员用户名),一旦连接到数据库,我们需要命令来创建数据库并将文件读入其中:
create database new_db;
use new_db;
\. dumpfile.sql
详细信息将根据创建转储文件时使用的选项而有所不同。