【Mysql】mysql数据导入导出

一、使用into outfileload data infile导入导出备份数据

这种方法的好处是导出的数据格式可以自己规定,并且导出的是纯数据,不含建表信息。

1.into outfile导出

SELECT * FROM `metadatakeys` INTO OUTFILE 'D:/outfile.txt' 
FIELDS TERMINATED BY '|' ENCLOSED BY '"' LINES TERMINATED BY '\r\n'

2.load data infile导入

LOAD DATA INFILE 'D:/outfile.txt' INTO TABLE `metadatakeys`
FIELDS TERMINATED BY '|' ENCLOSED BY '"' LINES TERMINATED BY '\r\n'

二、使用mysqldump导出数据库

1.导出整个数据库

mysqldump -u用户名 -p密码 数据库名 > 导出要保存的文件名
mysqldump -uroot -p123456 database > database.dump

3.导出结构不导出数据

mysqldump -d -u用户名 -p密码 数据库名 > 导出的文件名
mysqldump -d -uroot -p123456 database > database.dump

4.导出数据不导出表结构

mysqldump -t -u用户名 -p密码 数据库名 > 导出的文件名
mysqldump -t -uroot -p123456 database > database.dump

5.导入数据

mysql 数据库名 < 文件名

三、mysqldump参数说明

1. --all-databases , -A

导出全部数据库。

mysqldump  -uroot -p --all-databases

2.--all-tablespaces , -Y

导出全部表空间。

mysqldump  -uroot -p --all-databases --all-tablespaces

3.--no-tablespaces , -y

不导出任何表空间信息。

mysqldump  -uroot -p --all-databases --no-tablespaces

4.--add-drop-database

每个数据库创建之前添加drop数据库语句。

mysqldump  -uroot -p --all-databases --add-drop-database

5.--add-drop-table

每个数据表创建之前添加drop数据表语句。(默认为打开状态,使用--skip-add-drop-table取消选项)

mysqldump  -uroot -p --all-databases  (默认添加drop语句)

mysqldump  -uroot -p --all-databasesskip-add-drop-table  (取消drop语句)

6.--add-locks

在每个表导出之前增加LOCK TABLES并且之后UNLOCK  TABLE。(默认为打开状态,使用--skip-add-locks取消选项)

mysqldump  -uroot -p --all-databases  (默认添加LOCK语句)

mysqldump  -uroot -p --all-databasesskip-add-locks   (取消LOCK语句)

7.--allow-keywords

允许创建是关键词的列名字。这由表名前缀于每个列名做到。

mysqldump  -uroot -p --all-databases --allow-keywords

8.--apply-slave-statements

'CHANGE MASTER'前添加'STOP SLAVE',并且在导出的最后添加'START SLAVE'。

mysqldump  -uroot -p --all-databases --apply-slave-statements

9.--character-sets-dir

字符集文件的目录

mysqldump  -uroot -p --all-databases  --character-sets-dir=/usr/local/mysql/share/mysql/charsets

10.--comments

附加注释信息。默认为打开,可以用--skip-comments取消

mysqldump  -uroot -p --all-databases  (默认记录注释)

mysqldump  -uroot -p --all-databases --skip-comments   (取消注释)

11.--compatible

导出的数据将和其它数据库或旧版本的MySQL 相兼容。值可以为ansi、mysql323、mysql40、postgresql、oracle、mssql、db2、maxdb、no_key_options、no_tables_options、no_field_options等,

要使用几个值,用逗号将它们隔开。它并不保证能完全兼容,而是尽量兼容。

mysqldump  -uroot -p --all-databases --compatible=ansi

12.--compact

导出更少的输出信息(用于调试)。去掉注释和头尾等结构。可以使用选项:--skip-add-drop-table  --skip-add-locks --skip-comments --skip-disable-keys

mysqldump  -uroot -p --all-databases --compact

13.--complete-insert, -c

使用完整的insert语句(包含列名称)。这么做能提高插入效率,但是可能会受到max_allowed_packet参数的影响而导致插入失败。

mysqldump  -uroot -p --all
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值