我的编程空间,编程开发者的网络收藏夹
学习永远不晚

MySQL 5.5如何使用Xtrabackup在线搭建复制环境

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

MySQL 5.5如何使用Xtrabackup在线搭建复制环境

这篇文章给大家分享的是有关MySQL 5.5如何使用Xtrabackup在线搭建复制环境的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。



--编辑Master的配置文件
[root@localhost install]# vim /etc/my.cnf
# Log
server-id = 100
log-bin = /log/binlog/mysql-bin

--在Slave安装好MySQL软件,安装流程可以参考源码安装文章
http://blog.itpub.net/26506993/viewspace-2072859/

--在Master节点,使用Xtrabackup创建完整备份
关于Xtrabackup,可参考
http://blog.itpub.net/26506993/viewspace-2087734/
http://blog.itpub.net/26506993/viewspace-2088737/

[root@localhost backup]# /install/percona/percona-xtrabackup-2.4.2-Linux-x86_64/bin/innobackupex  --defaults-file=/etc/my.cnf --stream=tar /tmp --user system --password 'Mysql#2015' | gzip -> 
/backup/xtra/xtra_fullbackup_20160501.tar.gz

--拷贝备份到Slave节点
[root@localhost backup]# scp /backup/xtra/xtra_fullbackup_20160501.tar.gz  root@192.168.78.137:/backup/20160501

解压备份到数据文件目录
[root@localhost 5505]# tar xivfz xtra_fullbackup_20160501.tar.gz -C /mysql_data/5505

在Slave节点上面需要安装Xtraback
--使用Xtrabackup准备数据、应用日志,使数据文件达到一致性的状态
[root@localhost bin]# ./innobackupex --defaults-file=/mysql_data/cnf/my.cnf  --apply-log /mysql_data/5505
.....
InnoDB: Doing recovery: scanned up to log sequence number 68405269 (0%)
InnoDB: Doing recovery: scanned up to log sequence number 68405269 (0%)
InnoDB: Database was not shutdown normally!
InnoDB: Starting crash recovery.
InnoDB: xtrabackup: Last MySQL binlog file position 414, file name /log/binlog/mysql-bin.000012
InnoDB: Removed temporary tablespace data file: "ibtmp1"
InnoDB: Creating shared tablespace for temporary tables
InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
InnoDB: File './ibtmp1' size is now 12 MB.
InnoDB: 96 redo rollback segment(s) found. 1 redo rollback segment(s) are active.
InnoDB: 32 non-redo rollback segment(s) are active.
InnoDB: 5.7.11 started; log sequence number 68405269
xtrabackup: starting shutdown with innodb_fast_shutdown = 1
InnoDB: FTS optimize thread exiting.
InnoDB: Starting shutdown...
InnoDB: Shutdown completed; log sequence number 68405621
160430 23:51:25 completed OK!

--在Master数据库上面创建复制专用账户
mysql> grant replication slave on *.* to 'repl'@'192.168.78.%' identified by 'Mysql#2015';
Query OK, 0 rows affected (0.04 sec)

--配置Slave的配置文件
[root@localhost 5505]# vim /mysql_data/cnf/my.cnf
# Log
server-id = 200
log-bin = /mysql_log/binlog/mysql-bin
relay-log = /mysql_log/binlog/product-relay-bin
relay-log-index = /mysql_log/binlog/product-relay-index
binlog_cache_size = 32M
max_binlog_cache_size = 512M
max_binlog_size = 512M
binlog_format = MIXED
relay_log_recovery = 1

--启动Slave节点的Mysql服务
[root@localhost bin]# /data/bin/mysqld_safe --defaults-file=/mysql_data/cnf/my.cnf &

--配置Slave节点复制环境
查询Slave节点连接Master节点的二进制文件和位置
使用Xtrabackup备份时,在xtrabackup_binlog_info文件中会保存这部分信息
[root@localhost 5505]# more xtrabackup_binlog_info
mysql-bin.000012 414

--在Slave节点执行CHANGE MASTER语句
mysql> change master to
    -> master_host='192.168.78.139',
    -> master_port=3306,
    -> master_user='repl',
    -> master_password='Mysql#2015',
    -> master_log_file='mysql-bin.000012',
    -> master_log_pos=414;
Query OK, 0 rows affected (0.13 sec)

--启动应用线程
mysql> start slave;

--查看同步状态
mysql> show slave status\G
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 192.168.78.141
                  Master_User: repl
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000013
          Read_Master_Log_Pos: 341
               Relay_Log_File: product-relay-bin.000003
                Relay_Log_Pos: 487
        Relay_Master_Log_File: mysql-bin.000013
             Slave_IO_Running: Yes
            Slave_SQL_Running: Yes

感谢各位的阅读!关于“MySQL 5.5如何使用Xtrabackup在线搭建复制环境”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

MySQL 5.5如何使用Xtrabackup在线搭建复制环境

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

技术分享 | 如何使用 dbdeployer 快速搭建 MySQL 测试环境

作者:余振兴一、工具介绍dbdeployer 是一款十分强大的数据库测试环境部署工具,可实现一键部署不同架构、不同版本的数据库环境。如:MySQL 主从复制、GTID 模式复制、MySQL 组复制(单主模式、多主模式等)完整的数据库类型支持及版本,可在安装完
2022-01-26

MySQL的索引在Python中如何合理创建和使用?(Python环境下如何为MySQL数据库合理创建和使用索引?)

在Python中为MySQL表创建和使用索引可以提高查询性能。使用create_index()方法创建索引,并使用filter()方法强制查询使用特定索引。最佳实践包括在经常用于where子句的列上创建索引,避免在经常更新的列上创建索引,并定期分析索引使用情况。Python提供内置函数get_indexes()、drop_index()和has_index()来管理索引。
MySQL的索引在Python中如何合理创建和使用?(Python环境下如何为MySQL数据库合理创建和使用索引?)
2024-04-02

MySQL的触发器在Python中如何实现和应用?(Python环境下如何创建和使用MySQL的触发器?)

MySQL触发器的Python实现和应用MySQL触发器可自动执行数据库操作,实现业务逻辑。要在Python中创建触发器,可以使用mysql.connector库。触发器逻辑可以使用SQL语句编写,包括更新表、发送通知等。Python本身不支持触发器,但可以通过SQLAlchemy等框架进行集成。触发器优点包括自动化任务、减少重复代码、提升性能。缺点则包括复杂性、性能影响和调试困难。
MySQL的触发器在Python中如何实现和应用?(Python环境下如何创建和使用MySQL的触发器?)
2024-04-02

编程热搜

目录