• 数据库的备份,迁移


    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
    
  • 相关阅读:
    [置顶] 礼物:《红孩儿引擎内功心法修练与Cocos2dx》之结点系统(场景,层,精灵)
    略读六部计算机名著
    #Sam有话说#AI OR AXURE
    Android 鲜为人知的 8 个小秘密
    iphone下来电实现铃声静音
    mac下的svn工具——Versions使用详解
    android下面res目录使用
    状态压缩DP 题目小节 (一)
    [置顶] 【游戏产业的5年之变】
    /usr/bin/ld: cannot find lxxx问题总结
  • 原文地址:https://www.cnblogs.com/pythonywy/p/11351223.html
Copyright © 2020-2023  润新知