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

3.MySQL Replication(

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

北京

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

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

看不清楚,换张图片

免费获取短信验证码

3.MySQL Replication(

3.1 MySQL Replication 概述

MySQL Replication俗称MySQL AB复制,主要是通过把主服务器上的二进制日志通过网络传到从服务器上,MYSQL会自己把二进制日志转换成相关的DDL,DML,DCL等语句!但这种复制不同于MySQL簇,它是单向异步的。目前MySQL 复制在企业应用率非常高,已经成为系统工程师必备的技能。

具体的原理请参考MySQL官方文档:http://dev.mysql.com/doc/refman/5.1/zh/index.html

3.2 安装MySQL Slave

实验环境:

 

实验环境是沿用第二章实验基础上的:

 

主机名

IP地址

作用

MySQL-Master

192.168.0.13

MySQL主库服务器

MySQL-Slave

192.168.0.14

MySQL 从库服务器

 

3.3 在MySQL Master上的配置

 3.3.1 创建Replication用户

[root@MySQL-Master ~]# mysql -u root -p

Enter password: 

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 2

Server version: 5.1.55-log Source distribution

 

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

This software comes with ABSOLUTELY NO WARRANTY. This is free software,

and you are welcome to modify and redistribute it under the GPL v2 license

 

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

 

mysql> GRANT REPLICATION SLAVE,reload,super ON *.* TO slave@192.168.0.14 IDENTIFIED BY 'unixhot';

Query OK, 0 rows affected (0.00 sec)

Mysql>quit

 3.3.2 修改MySQL配置文件。

[root@MySQL-Master ~]# vim /etc/my.cnf 

 

server-id=1  #1..设置server id

log-bin=mysql-binlog    #打开二进制日志,最好放在不同的硬盘上,减小磁盘IO消耗

expire_logs_day=10     #设置二进制日志保存日期

max_binlog_size=500M  #设置每个binlog文件的大小

 

修改完后重新加载数据库:[root@MySQL-Master ~]# /etc/init.d/mysqld restart

 

注意:mysql-5.1.45.tar.gz版本默认开启了log-bin选项,并且server-id默认为1.

 

 3.3.3 获得Master DB的相关信息

mysql> show master status;

+------------------+----------+--------------+------------------+

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |

+------------------+----------+--------------+------------------+

| mysql-bin.000003 |      106 |              |                  |

+------------------+----------+--------------+------------------+

1 row in set (0.00 sec)

注意:供Slave DB连接时使用。

 3.3.4 备份Master DB数据到Slave DB

    备份的方法有很多,可以直接复制数据文件,也可以使用mysqldump,在这里不再详述。本文全新的搭建,所以不存在数据同步的问题。

 

3.4 在MySQL Slave 上的配置。

  3.4.1 修改MySQL配置文件

[root@MySQL-Slave ~]# vim /etc/my.cnf 

server-id=2   #配置多个从服务器时依次设置id号

slave-skip-errors=all  #mysql 复制可能出现主服务器上可以运行的语句,从服务器不能够运行,所以我们在my.cnf加一句slave-skip-errors=all 意思是忽略所有的sql语句错误!

relay-log=mysql-relay-bin #该文件用于存放Slave端的I/O线程从Master端读取的二进制文件信息

 

修改完后重启数据库:[root@MySQL-Slave ~]# /etc/init.d/mysqld restart

  3.4.2 在Slave服务器授权。

mysql> CHANGE MASTER TO

    -> MASTER_HOST='192.168.0.13',

    -> MASTER_USER='slave',

    -> MASTER_PASSWORD='unixhot',

    -> MASTER_LOG_FILE='mysql-bin.000003',

    -> MASTER_LOG_POS=106;

Query OK, 0 rows affected (0.04 sec)

 

参数说明:

MASTER_HOST:Master主机名(或者IP地址)

MASTER_USER:Slave连接Master主机的用户名

MASTER_PASSWORD:Slave连接Master的用户密码

MASTER_LOG_FILE:开始复制的日志文件名称

MASTER_LOG_POS:开始复制的日志文件位置,也就是Log Position。

  3.4.3 启动Slave DB

mysql> START SLAVE;

Query OK, 0 rows affected (0.00 sec)

3.5 测试复制是否成功。

可以在Master DB创建一个数据库,或者表,到Slave DB上看,如果配置成功就可以成功同步的。

MySQL Replication的监控请参考《Linux 系统运维之监控》。


免责声明:

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

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

3.MySQL Replication(

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

下载Word文档

猜你喜欢

3.MySQL Replication(

3.1 MySQL Replication 概述MySQL Replication俗称MySQL AB复制,主要是通过把主服务器上的二进制日志通过网络传到从服务器上,MYSQL会自己把二进制日志转换成相关的DDL,DML,DCL等语句!但这
2023-01-31

Replication

Replication On this page Redundancy and Data Availability Replication in MongoDB Asy
Replication
2018-01-15

MySQL Group Replication的安装部署

这次给大家介绍下MySQL官方最新版本5.7.17中GA的新功能Group Replication。Group Replication是一种可用于实现容错系统的技术。复制组是一组通过消息传递相互交互的服务器。通信层提供一组保证,例如原子消息
2023-01-31

MySQL同步数据Replication如何实现

今天小编给大家分享一下MySQL同步数据Replication如何实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。MySQ
2023-07-05

编程热搜

目录