mysql命令行导出sql数据的方法

发布时间:2020-12-22编辑:脚本学堂
本文介绍了mysql中使用命令行导出sql数据文件的方法,使用mysqldump和source命令导出与导出数据,需要的朋友参考下。

首先进入mysql命令行,输入:use 数据库名;
其次输入:source test.sql  就可以把Test表的数据全部导出来。

mysqldump和source可以使用这种方式导出数据:
 

复制代码 代码示例:
mysqldump -urott -P5678 --default-character-set=gb2312 -p -h127.0.0.1 Test test1 > test1.sql

也可以使用如下sql语句
 

复制代码 代码示例:
mysql -uroot -P5678 --default-character-set=gb2312 -p -h127.0.0.1 -e "select * from Test.test1" > test1.sql

 (不过这样要手动建表,当然可以 show create test1得到建表语句)

导入数据的sql语句:
可以这样(在mysql命令行下)
 

复制代码 代码示例:
mysql>use Test;
mysql>source test1.sql;

如果用select的方式得到的文件,应该这样导入:
 

复制代码 代码示例:
mysql>load data infile "test.sql" into table Test.test1;

导入时可以"show processlistG"查看导入状态。
有时会发生错误:ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails (`Test/test1`, CONSTRAINT `xxx` FOREIGN KEY (`AA`) REFERENCES `BB` (`AA`))
需要对外键约束进行删除,比如:
 

复制代码 代码示例:
alter table cwealinfo drop foreign key `xxx`;

也可以:set foreign_key_checks = 0;
导出和导入时需要注意数据库的版本,比如从4导到5,最好用4的mysqldump,否则可能会失败。
另外,还需要注意字符集问题,如果两个库的字符集不同,可能会导致问题,因此导入前最好用“show variables like '%char%'”查看下是否需要调整字符集设置。
更多请参考sql语句大全中的介绍。

第二部分,mysql命令行导出数据库。

1,进入mysql目录下的bin文件夹:cd mysql中到bin文件夹的目录

命令行:cd C:Program FilesMySQLMySQL Server 4.1bin
(或者直接将windows的环境变量path中添加该目录)

2,导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名

命令行:

复制代码 代码示例:
mysqldump -u root -p news > news.sql  

(输入后会让你输入进入MySQL的密码)
(如果导出单张表的话在数据库名后面输入表名即可)

3、会看到文件news.sql自动生成到bin文件下 
命令行导入数据库:
1,将要导入的.sql文件移至bin文件下,这样的路径比较方便
2,同上面导出的第1步
3,进入MySQL:mysql -u 用户名 -p
命令行:
mysql -u root -p   (输入同样后会让你输入MySQL的密码)
4,在MySQL-Front中新建你要建的数据库,这时是空数据库,如新建一个名为news的目标数据库
5,输入:mysql>use 目标数据库名
命令行:
 

复制代码 代码示例:
mysql>use news;

6,导入文件:mysql>source 导入的文件名;
命令行:
 

复制代码 代码示例:
mysql>source news.sql;

第三部分,mysql数据库的备份与还原。

1.win32下mysql的备份与还原
1.1 备份
开始菜单 | 运行 | cmd |利用“cd Program FilesMySQLMySQL Server 5.0bin”命令进入bin文件夹 | 利用“mysqldump  -u 用户名 -p databasename >exportfilename”导出数据库到文件,如mysqldump -u root -p voice>voice.sql,然后输入密码即可开始导出。
 
1.2 还原
进入mysql command line client,输入密码,进入到“mysql>”,输入命令"show databases;",回车,看看有些什么数据库;建立你要还原的数据库,输入"create database voice;",回车;切换到刚建立的数据库,输入"use voice;",回车;导入数据,输入"source voice.sql;",回车,开始导入,再次出现"mysql>"并且没有提示错误即还原成功。
 
2.linux下mysql的备份与还原
2.1 备份
 

复制代码 代码示例:
[root@localhost ~]# cd /var/lib/mysql (进入到mysql库目录,根据自己的mysql的安装情况调整目录)
[root@localhost mysql]# mysqldump -u root -p voice>voice.sql,输入密码即可。
 

2.2 还原
法一:
 

复制代码 代码示例:
[root@localhost ~]# mysql -u root -p 回车,输入密码,进入mysql的控制台"mysql>",同1.2还原。
 

法二:
 

复制代码 代码示例:
[root@localhost ~]# cd /var/lib/mysql (进入到mysql库目录,根据自己的mysql的安装情况调整目录)
[root@localhost mysql]# mysql -u root -p voice<voice.sql,输入密码即可。