700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > mysql逻辑备份之mysqldump

mysql逻辑备份之mysqldump

时间:2020-08-15 02:22:17

相关推荐

mysql逻辑备份之mysqldump

独角兽企业重金招聘Python工程师标准>>>

导出篇

(1)导出所有数据库

>>mysqldump -uroot -proot --all-databases >/tmp/all.sql

(2)导出db1、db2两个数据库的所有数据

>>mysqldump -uroot -proot --databases db1 db2 >/tmp/user.sql

(3)导出db1中的a1、a2表

注意导出指定表只能针对一个数据库进行导出,且导出的内容中和导出数据库也不一样,导出指定表的导出文本中没有创建数据库的判断语句,只有删除表-创建表-导入数据

>>mysqldump -uroot -proot --databases db1 --tables a1 a2 >/tmp/db1.sql

(4)条件导出,导出db1表a1中id=1的数据

如果多个表的条件相同可以一次性导出多个表,

字段是整形

>>mysqldump -uroot -proot --databases db1 --tables a1 --where='id=1' >/tmp/a1.sql

字段是字符串,并且导出的sql中不包含drop table,create table

>>mysqldump -uroot -proot --no-create-info --databases db1 --tables a1 --where="id='a'" >/tmp/a1.sql

(5)只导出表结构不导出数据,-no-data

>>mysqldump -uroot -proot --no-data --databases db1 >/tmp/db1.sql

(6)生成新的binlog文件,-F

有时候会希望导出数据之后生成一个新的binlog文件,只需要加上-F参数即可

>>mysqldump -uroot -proot --databases db1 -F >/tmp/db1.sql

(7)跨服务器导出导入数据

>>mysqldump --host=h1 -uroot -proot --databases db1 |mysql --host=h2 -uroot -proot db2

将h1服务器中的db1数据库的所有数据导入到h2中的db2数据库中,db2的数据库必须存在否则会报错

>>mysqldump --host=192.168.80.137 -uroot -proot -C --databases test |mysql --host=192.168.80.133 -uroot -proot test

加上-C参数可以启用压缩传递。

导入篇:

1>使用source 命令恢复数据库

使用source 命令,需要先登录数据库,在数据库操作界面调用该指令进行还原,语法如下

mysql>source /beifen/0828/db.sql

2>

mysql -u<username> -p<password> <dbname> < /beifen/0828/db.sql #库必须保留,空库也可

说明:指定dbname,相当于use <dbname>

>>mysql -uroot -proot testdb < /beifen/0828/db.sql

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。