• mysqldump 备份


    1.  直接备份某个库或表 ,或多个库多个表
    mysqldump -uroot -pPassword [database name] > [dump file]
    mysqldump -uroot -pPassword  --databases mydatabase1 mydatabase2 mydatabase3 > [dump file]
    mysqldump --all-databases> test.dump

    2.  备份并压缩
    mysqldump -uroot -pPassword --events -B [database name] | gzip > ${date}_${dbname}.sql.gz

    3.  跨主机备份
    mysqldump --host=host1 --opt sourceDb| mysql --host=host2 -C targetDb

    4.  --opt

    如果加上--opt参数则生成的dump文件中稍有不同:
    建表语句包含drop table if exists tableName
    insert之前包含一个锁表语句lock tables tableName write,insert之后包含unlock tables

    5.  只备份表结构
    mysqldump -uroot -pPassword --no-data --databases mydatabase1 mydatabase2 mydatabase3 > test.dump

    6.  恢复表或者数据
    mysql [database name] < [backup file name]

    7.  mysql  二进制 增量备份
    mysql  开启二进制  [mysqld]log-bin=mysql-bin


    优化
    1.  --all-databases 包含了 mysql 数据库,其中包含了权限的数据,所以我们应该加上 --flush-privileges,在恢复时,权限才能生效;
    注意 --all-databases 包括了mysql数据库,但是不会包含 information_schema和performance_schema两个数据库。

    2. --delete-master-logs(尽量不要用) 备份之后,会执行 purge logs to 语句。删除了备份之后的master上的binary log. 一般而言,我们不建议随便删除binary log.
    我们应该将它们保存起来,而不是直接删除。以防万一,要留条退路。

    3.  因为 mysqldump 默认启用了 --lock-tables,所以会导致在备份期间对所有表持有读锁: lock table tb read local,所以所有的update,delete语句会被阻塞。但是select语句和insert语句不会被阻塞。

    4.  如果要得到一致性的备份的话,需要使用 --lock-all-tables 或者使用 --single-transaction选项。前者使用了全局读锁,不允许任何修改操作。后者使用了事务的特性来得到一致性备份。

    5.  --master-data         使用此选项dump a master replicationserver到dump文件,可用于设立另一台服务器作为master的slave。它会使dump输出包含CHANGE MASTER TO语句,标记dump源的二进制日志坐标(文件名和位置)

    如果选项赋值为2,那么CHANGE MASTER TO 语句会被写成一个SQL comment(注释),从而只提供信息;
    如果选项赋值为1,那么语句不会被写成注释并且在dump被载入时生效。如果没有指定,默认值为1。

    mysqldump -uxxx -p --single-transaction --master-data=2 --routines --flush-logs --databases db1 db2 db3 > alldb.sql;
    --flush-logs  在mysqldump之前 进行日志刷新一次
    --routines 用来备份存储过程和函数,触发器默认会备份。

  • 相关阅读:
    python中list的一种取值方式切片
    python之字典(Dictionary)
    表示数字
    自动收售货系统
    明明的随机数
    自守数
    等差数列
    计算字符个数
    字符统计
    Redraimen的走法
  • 原文地址:https://www.cnblogs.com/yxqnote/p/20180718_ms.html
Copyright © 2020-2023  润新知