数据库的备份,迁移

08.14自我总结 数据库的备份 一数据库的备份 1.单库备份 mysqldump -uroot -p123 db1 > db1.sql #库名 mysqldump -uroot -p123 db1 table1 table2 > db1-table1-table2.sql #库名 表...

08.14自我总结

数据库的备份

一数据库的备份

1.单库备份

mysqldump -uroot -p123 db1 > db1.sql  #库名
mysqldump -uroot -p123 db1 table1 table2 > db1-table1-table2.sql #库名 表名

2.多库备份

mysqldump -uroot -p123 --databases db1 db2 mysql db3 > db1_db2_mysql_db3.sql

3.备份所有库

mysqldump -uroot -p123 --all-databases > all.sql

二.备份恢复

1.退出数据库后

mysql -u -p < filename.sql;

2.在数据库内

  • 创建空数据库
  • 选择数据库
  • 然后使用source filename; 来进行还原

例如

use db1;
source /root/db1.sql

三.数据库迁移

务必保证在相同版本之间迁移
# mysqldump -h 源IP -uroot -p123 --databases db1 | mysql -h 目标IP -uroot -p456

四.备份高阶

1.常用参数

  • -B:表示的是指定多个库,增加了建库语句和use数据库的语句。
  • -compact:去掉注释,适合调试输出,不适合在生产环境使用。
  • -A: 表示的是本分所有的库。
  • -F:刷新binlog日志,方便进行增量的恢复。
  • –master-data:增加binlog日志文件名及其对应的位置点。
  • -x,–lock-all-tables :在备份的时候进行锁表,保持数据的一致性。
  • -d:只备份表的结构。
  • -t : 只备份数据库中的数据
  • –single-transaction 适合innodb数据库的备份。

2.-B备份

单库

备份test中的所有表
mysqldump -uroot -ppassword  -B test >/tmp/test.sql

多库

mysqldump -uroot -ppassword  -B 库1 库2  >/tmp/test.sql

3.使用gzip进行压缩数据备份

mysqldump -uroot -ppassword  -B 库1 库2 |gzip >/tmp/test.gz

4.备份时候切割binlog日志:(进行增量备份的时候可以用到)

-F 的作用就是备份数据库的时候,将binlog日志进行重新刷新。
mysqldump -uroot -ppassword  -t  -B -F test

5.备份的时候会记录指定文件的位置以及mysqlbinglog的文件名称

--master-data=1 的作用就是备份数据库的时候,将binlog日志进行重新刷新
mysqldump -uroot -ppassword  -t  -B -F --master-data test
  • 发表于 2019-08-14 21:20
  • 阅读 ( 8 )
  • 分类:网络文章

你可能感兴趣的文章

相关问题

条评论

请先 登录 后评论
不写代码的码农
小编

篇文章

作家榜 »

  1. 小编 文章
返回顶部
部分文章转自于网络,若有侵权请联系我们删除