数据库导入导出mysql_数据库——mysql数据导入导出方法

背景:工作时经常用到mysql数据导入导出,总结了常用方法:

假设:mysql数据位于IP为1.2.3.4的机器上,通过端口3306来访问,用户名为myuser,密码为123。

1  mysql数据导出

常用的数据导出方法有三种:

1.1select into outfile

1.1.1使用前提

用户myuser拥有file的权限。注意file权限属于全局权限,要赋给用户myuser,必须使用 grant  *.*,示例语句如下:

grant file on *.* to user;

1.1.2基本指令

select * from table1 into outfile "a1.txt" ;

注意导出文件a1.txt默认路径放在mysql安装目录var文件夹下。可以使用全局路径指定导出文件路径。

select * from table1 into outfile "/home/a2.txt" ;

1.1.3 扩展指令

select * from table into outfile "a3.txt" fields terminated by ',' enclosed by '"' lines terminated by '\n' ;扩展字段命令解释:fields指明导出数据字段之间的分隔字符、字段包含字符等,lines指明导出数据行之间的分隔字符等。

1.2mysql –e 命令

1.2.1 基本指令

mysql –h1.2.3.4 –P3306 –umyuser -p123 -e "use database; select * from table where id>=0 " >a3.txt

mysql  –e 命令可以导出符合where条件的部分数据,具有数据筛选功能,使用简单方便。

1.3mysqldump方法

上面的两种方法输出的只有数据没有表的create语句和数据的insert语句,而且不能同时处理多个表结构。mysqldump是mysql用于转存储数据库的实用程序,存储在mysql/bin/目录下。

1.3.1 基本指令

mysqldump –h1.2.3.4 –P3306 –umyuser -p123 database > a3.sql;

mysqldump可以导出整个数据库database,包括数据库中所有表的create语句,所有数据的insert语句。

如果只想导出数据库database所有表的create语句,使用-d选项:

mysqldump –h1.2.3.4 –P3306 –umyuser -p123 -d database > a4.sql;

如果只想导出database所有数据的insert语句,使用-t选项:

mysqldump –h1.2.3.4 –P3306 –umyuser -p123 -t database > a5.sql;

1.3.2  扩展指令

如果只想单独导出某个数据表table1的create语句和数据insert语句,可以使用如下命令:

mysqldump –h1.2.3.4 –P3306 –umyuser -p123 database table1 > a6.txt ;

如果想导出其它一些特殊条件的数据,可以使用特殊选项:

mysqldump –h1.2.3.4 –P3306 –umyuser -p123 --skip-opt --no-create-info --default-character-set=gbk --where="id>=0" database table1 > a7.txt;

--skip-opt :表table1中一条数据对应一条insert语句;如果改成--opt,表table2中所有数据总共对应一条insert语句。

--no-create-info :指明导出文件a7.txt中不包含表table1的create语句。

--default-character-set=gbk:指明导出数据格式是gbk,也可以指明utf8等其它格式。

--where=””: 导出数据满足的条件。

2 mysql数据导入

和数据导出类似,mysql数据导入也有三种常用方法

2.1 load data infile

load data infile "a1.txt" into table1;

2.2 mysql 命令

mysql -h1.2.3.4 -P3306 -umyuser -p123 database < a5.sql ;

2.3 mysqlimport方法

mysqlimport位于mysql/bin目录中,是mysql的一个导入数据的一个非常有效的工具。示例指令如下:

mysqlimport database a4.sql

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值