跳转到内容

❧ Mysql快速导入导出数据

一、导出SQL文件

  • 导出数据库(包含数据) mysqldump -u user -p pass dbname > dbname.sql;
  • 导出数据表(包含数据) mysqldump -u user -p pass dbname tablename > tablename.sql;
  • 导出数据库结构 mysqldump -u user -p pass -d dbname > dbname.sql;
  • 导出数据表结构 mysqldump -u user -p pass -d dbname tablename > tablename.sql;

说明:远程连接添加参数-h 主机地址 -P 端口

二、导入SQL文件

1、系统命令

mysql -u user -p pass dbname < /home/dbname.sql;

2、mysql命令

mysql>
use dbname;
source /home/dbname.sql;

三、导出csv文件数据

1、系统命令

$ mysql -e "set names gbk;select * from test where id > 5" | sed -e "s/\t/,/g" -e "s/NULL/ /g" -e "s/\n/\r\n/g" > /db/test.csv
// 在-e参数中实际使用了两条命令,一条是设置字符集,另一条是select语句
// 通过管道把每一行数据都通过正则来处理
// 字段之间的TAB键换为“,”,然后把字段值中的null替换为空字符
// 若不导出标题行,可以使用-N参数

2、mysql命令

// 使用select .... into outfile的方法
select * from test limit 1 into outfile "/db/test1.csv";