赞
踩
Mysql数据的导入导出是我们十分常见的场景, 常常用于进行数据迁移以及数据备份,了解常见的导入导出方式以及注意事项是十分必要的,Mysql提供了多种方式支持数据的导入和导出。
select ...into outfile
语法是mysql提供的一种数据导出的方案,支持自定义导出数据格式。
最简单的使用方法如下,将test表的所有数据全部导出到test.txt文件。
select * from test into outfile '/tmp/test.txt';
更常用的方法是将表数据导出成csv格式,方便数据的查看以及重新导入
select a,b,c into outfile '/tmp/test.text' fields terminated by ',' optionally enclosed by '"' lines terminated by '\n' from test;
数据使用""括起来,使用逗号分隔,数据记录使用\n作为换行符。
mysqldump是mysql官方提供的用于数据导出的程序,其导出的被包含create、insert等语句,可以用于重新执行将数据导入新的库中。常见的用法有:
mysqldump -u root -p --no-create-info --tab=/tmp codingway test_table > codingway_test_dump.sql
mysqldump -u root -p --tab=/tmp codingway test_table > codingway_test_dump.sql
mysqldump -u root -p codingway > codingway_dump.sql
mysqldump -u root -p --all-databases > all_databases_dump.sql
mysqldump -u root -p codingway | mysql -h other-host.com codingway
insert into target_table select * from origin_table;
insert into target_table (column1,column2, ...) select column1,column2, ... from origin_table;
create table target_table select * from origin_table;
create table target_table select column1,column2,...from origin_table;
create table target_table select * from orign_db.origin_table;
create table target_table select column1,column2,...from origin_db.origin_table;
mysqlimport一般用于将select …into file导出的数据文件导入到数据表中。
mysqlimport -u root -p --local test test.txt
mysqlimport -u root -p --local --fields-terminated-by="," --lines-terminated-by="\n" test test.txt
mysqlimport -u root -p --local --columns=b,c,a test test.txt
mysqlimport支持的参数选项如下:
选项 | 功能 |
---|---|
-v | 显示版本 |
-p | 提示输入密码 |
-d or --delete | 新数据导入数据表中之前删除数据表中的所有信息 |
-f or --force | 不管是否遇到错误,mysqlimport将强制继续插入数据 |
-i or --ignore | 导入数据时忽略有相同唯一键的行 |
-l or -lock-tables | 数据被插入之前锁住表,防止插入数据时查询和更新受影响 |
-r or -replace | 若表中存在有相同唯一键的行,则替换 |
–fields-enclosed-by= | 使用什么符号将数据括起来,使用""表示使用双引号将数据括起来 |
–fields-terminated-by= | 使用什么符号分割数据字段,默认分隔符是Tab,常用逗号 |
–lines-terminated-by= | 使用什么符号进行行之间的分隔符,例如"\n"表示换行符 |
导入codingway整个数据库
mysql -uUser -pPassword < codingway.sql
导入codingway整个数据库
source /home/codingway.sql
load data local infile 'test.txt' into table test;
load data local infile 'test.txt' into table(a,b,c) test fields terminated by ',' lines terminated by '\n';
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。