我获得了一个MySQL数据库文件,我需要将其恢复为Windows Server 2008计算机上的数据库。
我尝试使用MySQL Administrator,但是我收到以下错误:
所选文件由。生成 mysqldump并且无法恢复 这个应用程序。
我该如何运作?
答案 0 :(得分:675)
如果您要还原的数据库尚不存在,则需要先创建它。
在命令行中,如果您位于包含转储文件的同一目录中,请使用以下命令(具有适当的替换):
C:\> mysql -u root -p
mysql> create database mydb;
mysql> use mydb;
mysql> source db_backup.dump;
答案 1 :(得分:532)
应该像运行这个一样简单:
mysql -u <user> -p < db_backup.dump
如果转储属于单个数据库,则可能需要在文件顶部添加一行:
USE <database-name-here>;
如果它是许多数据库的转储,那么use语句已经存在。
要运行这些命令,请在cd
可执取决于你如何安装mysql,即独立或作为WAMP等软件包的一部分。进入该目录后,您应该只需输入上面的命令即可。
答案 2 :(得分:213)
你只需要运行它:
mysql -p -u[user] [database] < db_backup.dump
如果转储包含多个数据库,则应省略数据库名称:
mysql -p -u[user] < db_backup.dump
要运行这些命令,请在cd
可执取决于你如何安装mysql,即独立或作为WAMP等软件包的一部分。进入该目录后,您应该只需输入命令即可。
答案 3 :(得分:56)
mysql -u username -p -h localhost DATA-BASE-NAME < data.sql
看here - step 3:这样你不需要USE声明
答案 4 :(得分:32)
当我们使用mysqldump
制作转储文件时,它包含的是一个用于重新创建数据库内容的大型SQL脚本。所以我们通过启动MySQL的命令行客户端来恢复它:
mysql -uroot -p
(其中root
是我们的MySQL管理员用户名),一旦连接到数据库,我们需要命令来创建数据库并将文件读入其中:
create database new_db;
use new_db;
\. dumpfile.sql
详细信息将根据创建转储文件时使用的选项而有所不同。
答案 5 :(得分:16)
运行命令进入DB
# mysql -u root -p
输入用户的密码然后输入新建数据库
mysql> create database MynewDB;
mysql> exit
然后退出.Afetr that.Run this Command
# mysql -u root -p MynewDB < MynewDB.sql
然后进入数据库并输入
mysql> show databases;
mysql> use MynewDB;
mysql> show tables;
mysql> exit
多数民众赞成........您的转储将从一个数据库恢复到另一个数据库
或者,还有一种替代转储恢复方式
# mysql -u root -p
然后进入数据库并输入
mysql> create database MynewDB;
mysql> show databases;
mysql> use MynewDB;
mysql> source MynewDB.sql;
mysql> show tables;
mysql> exit
答案 6 :(得分:14)
我按照这些步骤开始工作......
打开MySQL管理员并连接到服务器
选择左侧的“目录”
右键单击左下方框并选择“创建新架构”
MySQL Administrator http://img204.imageshack.us/img204/7528/adminsx9.th.gif enlarge image
命名新架构(例如:“dbn”)
MySQL New Schema http://img262.imageshack.us/img262/4374/newwa4.th.gif enlarge image
打开Windows命令提示符(cmd)
Windows Command Prompt http://img206.imageshack.us/img206/941/startef7.th.gif enlarge image
将目录更改为MySQL安装文件夹
执行命令:
mysql -u root -p dbn < C:\dbn_20080912.dump
...其中“root”是用户名,“dbn”是数据库名称,“C:\ dbn_20080912.dump”是mysqldump .dump文件的路径/文件名
MySQL dump restore command line http://img388.imageshack.us/img388/2489/cmdjx0.th.gif enlarge image
享受!
答案 7 :(得分:12)
您可以尝试SQLyog'执行SQL脚本'工具来导入sql / dump文件。
答案 8 :(得分:12)
如果要查看转储的进度,请尝试以下命令:
pv -i 1 -p -t -e /path/to/sql/dump | mysql -u USERNAME -p DATABASE_NAME
你当然需要安装'pv'。此命令仅适用于* nix。
答案 9 :(得分:10)
./mysql -u <username> -p <password> -h <host-name like localhost> <database-name> < db_dump-file
答案 10 :(得分:9)
作为先前答案的具体例子:
我需要恢复备份,以便将其导入/迁移到SQL Server。我只安装了MySql,但没有将其注册为服务或将其添加到我的路径中,因为我没有必要让它保持运行。
我使用Windows资源管理器将我的转储文件放在C:\ code \ dump.sql中。然后从开始菜单项打开MySql。创建了数据库,然后使用完整路径运行source命令,如下所示:
mysql> create database temp
mysql> use temp
mysql> source c:\code\dump.sql
答案 11 :(得分:7)
使用在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
答案 12 :(得分:4)
如果未从那里创建备份/转储,则无法使用MySQL Admin中的“还原”菜单。不过值得一试。如果您选择“忽略错误”并使用该复选框,它会说它已成功完成,但它显然只导出了一小部分行导入...这是一个转储,请注意。
答案 13 :(得分:3)
从mysqldump
mysql -u <username> -p<password> -e "source <path to sql file>;"
答案 14 :(得分:1)
您还可以使用MySQL Administrator中的还原菜单。您只需打开备份文件,然后单击还原按钮。
答案 15 :(得分:1)
假设您已经创建了空白数据库,则还可以像这样从命令行还原数据库:
sudo mysql databasename < backup.sql
答案 16 :(得分:0)
您可以在查询选项卡中运行拖放并创建命令。
DROP DATABASE `your_db_name`;
CREATE SCHEMA `your_db_name`;