加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysqldump运用的注意事项

发布时间:2023-08-12 14:53:12 所属栏目:MySql教程 来源:
导读:主要给大家带来mysqldump使用的注意事项,所讲到的知识,与书籍不同,都是亿速云专业技术人员在与用户接触过程中,总结出来的,具有一定的经验分享价值,希望给广大读者带来帮助。

mysqldump

主库:

主要给大家带来mysqldump使用的注意事项,所讲到的知识,与书籍不同,都是亿速云专业技术人员在与用户接触过程中,总结出来的,具有一定的经验分享价值,希望给广大读者带来帮助。
 
mysqldump
 
主库:
 
     `--master-data`  取值:1或2
 
     在传统复制的情况下:备份时指定` --master-data=1` 会把自身的binlog file和position记录
 
     以change master to
 
           MASTER_LOG_FILE = 'master_log_name',
 
           MASTER_LOG_POS = master_log_pos
 
     的形式记录在备份的SQL文件中,制作新的从时可以直接导入此备份文件,即可将自己与主库进行连接
 
     若指定 `--master-data=2`则会将此语句注释掉,可以用于恢复主库。
 
     **需要**:reload权限,且开启binlog
 
     **注意**:指定此选项后会随之打开`--lock-all-tables`并持续整个备份过程(用于创建一致性备份环境)。
 
              但若同时指定`--single-transaction`,则只会在启动备份时才会加全局锁.
 
从库:
 
     `--dump-slave`  取值:1或2,取值含义与`--master-data`相同
 
     与上面的`--master-data`类似,同样会生成change master to 语句,但与主库上执行的
 
     show master status得到的  MASTER_LOG_FILE与 MASTER_LOG_POS 不同,从库上是通过
 
     show slave status获得Relay_Master_Log_File和  Exec_Master_Log_Pos这个两个参数值,并将其
 
     作为MASTER_LOG_FILE和MASTER_LOG_POS写入备份文件中
 
     **另** :Relay_Master_Log_File:包含从库的SQL线程最近执行过的事件(event)的主库binlog 文件
 
             Exec_Master_Log_Pos:从库正在使用的主库的binlog文件中,从库SQL线程刚刚执行过的事务
 
                                  位置。
 
                                  当从库开启多个slave thread时,每个线程执行的进度可能不同,根据
 
                                  木桶效应,这个值取各个线程中最旧的位置
 
     **原理上**:使用本参数后,备份倾向于使用主库的事务坐标,而不是使用从库自己本身的事务执行
 
                坐标,而且当本参数与`--master-data`同时使用时,会自动屏蔽掉`--master-data`参数。
 
但是:
 
     当从库启用GTID复制方式,并开启autoposition后,`--master-data`与`--slave-data`参数都不应继续
 
     使用,应使用GTID作为事务的坐标。直接指定`--single-transaction`即可
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章