Zac*_*son 525 mysql sql database
我得到了一个MySQL数据库文件,我需要将其恢复为Windows Server 2008计算机上的数据库.
我尝试使用MySQL Administrator,但是我收到以下错误:
所选文件由mysqldump生成,无法由此应用程序恢复.
我该如何工作?
Dón*_*nal 699
如果您要还原的数据库尚不存在,则需要先创建它.
在命令行中,如果您位于包含转储文件的同一目录中,请使用以下命令(具有适当的替换):
C:\> mysql -u root -p
mysql> create database mydb;
mysql> use mydb;
mysql> source db_backup.dump;
Run Code Online (Sandbox Code Playgroud)
Jus*_*ett 567
它应该像运行这个一样简单:
mysql -u <user> -p < db_backup.dump
Run Code Online (Sandbox Code Playgroud)
如果转储属于单个数据库,则可能必须在文件顶部添加一行:
USE <database-name-here>;
Run Code Online (Sandbox Code Playgroud)
如果它是许多数据库的转储,那么use语句已经在那里.
要运行这些命令,请打开一个命令提示符(在Windows中)和可执行文件cd
所在的目录mysql.exe
(您可能需要查看一下它,它取决于您如何安装mysql,即独立或作为其一部分像WAMP这样的包.一旦进入该目录,您应该能够像我上面那样输入命令.
vog*_*vog 233
你只需要运行这个:
cd
如果转储包含多个数据库,则应省略数据库名称:
mysql.exe
要运行这些命令,请打开一个命令提示符(在Windows中)和可执行文件cd
所在的目录mysql.exe
(您可能需要查看一下它,它取决于您如何安装mysql,即独立或作为其一部分像WAMP这样的包.进入该目录后,您应该只需键入命令即可.
wom*_*omd 58
mysql -u username -p -h localhost DATA-BASE-NAME < data.sql
Run Code Online (Sandbox Code Playgroud)
看这里 - 第3步:这样你不需要USE声明
pdc*_*pdc 33
当我们制作转储文件时mysqldump
,它包含的是一个用于重新创建数据库内容的大型SQL脚本.所以我们通过启动MySQL的命令行客户端来恢复它:
mysql -uroot -p
Run Code Online (Sandbox Code Playgroud)
(root
我们的MySQL管理员用户名在哪里),一旦连接到数据库,我们需要命令来创建数据库并将文件读入其中:
create database new_db;
use new_db;
\. dumpfile.sql
Run Code Online (Sandbox Code Playgroud)
根据创建转储文件时使用的选项,详细信息会有所不同.
Jav*_*eel 18
运行命令进入DB
# mysql -u root -p
Run Code Online (Sandbox Code Playgroud)
输入用户的密码然后创建新数据库
mysql> create database MynewDB;
mysql> exit
Run Code Online (Sandbox Code Playgroud)
然后退出.Afetr that.Run这个命令
# mysql -u root -p MynewDB < MynewDB.sql
Run Code Online (Sandbox Code Playgroud)
然后进入db并输入
mysql> show databases;
mysql> use MynewDB;
mysql> show tables;
mysql> exit
Run Code Online (Sandbox Code Playgroud)
多数民众赞成........您的转储将从一个DB恢复到另一个DB
否则,存在转储恢复的备用方式
# mysql -u root -p
Run Code Online (Sandbox Code Playgroud)
然后进入db并输入
mysql> create database MynewDB;
mysql> show databases;
mysql> use MynewDB;
mysql> source MynewDB.sql;
mysql> show tables;
mysql> exit
Run Code Online (Sandbox Code Playgroud)
Zac*_*son 14
我按照这些步骤开始工作......
打开MySQL Administrator并连接到服务器
选择左侧的"目录"
右键单击左下方框并选择"Create New Schema"
MySQL管理员http://img204.imageshack.us/img204/7528/adminsx9.th.gif 放大图片
命名新架构(例如:"dbn")
MySQL新架构http://img262.imageshack.us/img262/4374/newwa4.th.gif 放大图片
打开Windows命令提示符(cmd)
Windows命令提示符http://img206.imageshack.us/img206/941/startef7.th.gif 放大图像
将目录更改为MySQL安装文件夹
执行命令:
mysql -u root -p dbn < C:\dbn_20080912.dump
Run Code Online (Sandbox Code Playgroud)
...其中"root"是用户的名称,"dbn"是数据库名称,"C:\ dbn_20080912.dump"是mysqldump .dump文件的路径/文件名
MySQL转储恢复命令行http://img388.imageshack.us/img388/2489/cmdjx0.th.gif 放大图片
请享用!
Hen*_*jie 11
如果要查看转储的进度,请尝试以下操作:
pv -i 1 -p -t -e/path/to/sql/dump | mysql -u USERNAME -p DATABASE_NAME
你当然需要安装'pv'.此命令仅适用于*nix.
vkr*_*a17 10
./mysql -u <username> -p <password> -h <host-name like localhost> <database-name> < db_dump-file
Run Code Online (Sandbox Code Playgroud)
Mic*_*ael 10
作为先前答案的具体示例:
我需要恢复备份,以便将其导入/迁移到SQL Server.我只安装了MySql,但没有将其注册为服务或将其添加到我的路径中,因为我没有必要让它保持运行.
我使用Windows资源管理器将我的转储文件放在C:\ code\dump.sql中.然后从开始菜单项打开MySql.创建了数据库,然后使用完整路径运行source命令,如下所示:
mysql> create database temp
mysql> use temp
mysql> source c:\code\dump.sql
Run Code Online (Sandbox Code Playgroud)
使用在Linux上创建的200MB转储文件在Windows w/mysql 5.5上恢复,我获得了更多的成功
source file.sql
Run Code Online (Sandbox Code Playgroud)
从mysql提示的方法比用
mysql < file.sql
Run Code Online (Sandbox Code Playgroud)
在命令行上的方法,导致一些错误2006"服务器已经消失"(在Windows上)
奇怪的是,在(mysql)安装期间创建的服务引用了一个不存在的my.ini文件.我将"大"示例文件复制到my.ini,我已经使用建议的增加修改了该文件.
我的价值观是
[mysqld]
max_allowed_packet = 64M
interactive_timeout = 250
wait_timeout = 250
Run Code Online (Sandbox Code Playgroud)
用于恢复生成的 SQL 的单行命令mysqldump
mysql -u <username> -p<password> -e "source <path to sql file>;"
Run Code Online (Sandbox Code Playgroud)
假设您已经创建了空白数据库,您还可以从命令行恢复数据库,如下所示:
mysql databasename < backup.sql
Run Code Online (Sandbox Code Playgroud)