如果主从配置之前安装了云平台,请停止云平台后在进行mysql主从配置。

1、 登录master数据库,检查数据库端口防火墙设置,允许远程客户连接,如果没有,执行以下操作。

执行命令:iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

/etc/init.d/iptables save

注:参照具体操作系统进行配置

2、 编辑master数据库上的/etc/my.cnf,并将以下语句添加至[mysql]小节datadir语句下的区域

log_bin=mysql-bin

server_id=1

3、 重起master数据库mysql

#service mysqld restart

4、 在master数据库上创建一个replication账户并给予权限。我们将使用“cloud-repl”用户,密码“password”。这里假定master数据库和slave数据库运行在10.117.66.0/25网络。

mysql>create user 'cloud-repl'@'10.117.26.%' identified by 'password';(此处写实际主数据库ip)

5、 mysql> grant replication slave on *.* to 'cloud-repl'@'10.117.66.%' identified by 'password'; (此处从服务器ip)

mysql> flush privileges;

mysql> flush tables with read lock;

6、 保持当前shell下MySQL 会话的运行

7、 在新的shell启动第二个MySQL 会话

8、 获取数据库的当前position

mysql>show master status;

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

| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |

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

| mysql-bin.000001 |      412 |              |                  |

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

9、 记下实例返回的File和position。

10、 压缩master数据库的数据文件

#tar zcf /tmpdatabak.tgz /var/lib/mysql

11、 登录slave数据库所在的服务器,安装mysql,版本要求跟master数据库一致。

注:安装mysql,需要按照elaster的方式安装

12、 停止slave数据库

#service mysqld stop

13、 拷贝master数据库的tmpdatabak.tgz到slave数据库的根目录/,在主数据库操作复制命名如下:

scp /tmpdatabak.tgz root@10.110.122.202:/

解压到目录/var/lib/mysql

#cd /

#tar -zxvf tmpdatabak.tgz

14、 检查slave数据库端口防火墙设置,允许远程客户连接,如果没有,执行以下操作。

# iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

# /etc/init.d/iptables save

注:参照具体操作系统进行配置

15、 编辑slave数据库上的my.cnf,并添加如下语句于[mysql]小节的datadir语句下

server_id=2

16、 重启slave数据库MySQL

# /etc/init.d/mysqld start

17、 指示slave数据库连接master数据库并进行复制。

使用之前步骤里已经使用的值替换IP地址、密码、log file和position。在slave执行如下操作

mysql>change master to master_host='10.117.66.137',

master_user='cloud-repl',

master_password='password',

master_log_file='mysql-bin.000001',

master_log_pos=412;

18、 启动slave数据库上的replication

mysql> start slave;

19、 登录到master数据库释放master数据库库的lock(可以等slave数据库准备完成再解锁)

mysql> unlock tables;

20、 测试master数据库和slave数据库配置是否正常工作,检查一下操作后,看master数据库和slave数据库是否一致:

增加表、删除表

增加记录、删除记录、修改记录

master数据库重起后,工作是否正常

slave数据库重起后,工作是否正常

命令查看同步状态

mysql>show slave status;

mysql>show slave status \G;

如果第一遍失败,第二遍操作注意事项

1、在slave节点执行

mysql> show slave status;

mysql> stop slave;

2、删除从数据库默认安装目录 /var/lib/mysql 下所有文件,以免主数据库文件覆盖时与第一次未成功的文件合并

3、确保具有replication slave权限的用户可以从slave节点访问master节点 例如master ip为10.117.66.137 slave ip为10.117.66.138则,在slave节点执行以下命令测试:

mysql -h10.117.66.137 -ucloud-repl -ppassword

MySQL主从同步配置的更多相关文章

  1. mysql主从同步配置(windows环境)

    mysql主从同步配置(mysql5.5,windows环境)   A主机(作为主服务器)环境:windows8.mysql5.5 ip:192.168.1.100(自己填) B主机(作为从服务器,由 ...

  2. Docker Mysql主从同步配置搭建

    Docker Mysql主从同步配置搭建 建立目录 在虚拟机中建立目录,例如路径/home/mysql/master/data,目录结构如下: Linux中 新建文件夹命令:mkdir 文件夹名 返回 ...

  3. centos:mysql主从同步配置(2018)

    centos:mysql主从同步配置(2018) https://blog.csdn.net/liubo_2016/article/details/82379115 主服务器:10.1.1.144; ...

  4. Linux下MySQL主从同步配置

    Centos6.5 MySQL主从同步 MySQL版本5.6.25 主服务器:centos6.5 IP:192.168.1.101 从服务器:centos6.5 IP:192.168.1.102 一. ...

  5. Mysql主从同步配置方案(Centos7)

    最近在做项目高可用时,需要使用数据同步.由于只有双节点,且采用主主同步可能存在循环同步的风险,故综合考虑采用Mysql主从同步(Master-Slave同步). 可能没有接触过Mysql数据同步时,可 ...

  6. mysql 主从同步配置

    1  环境 mac air 主机做 主库,使用的是XAMPP自带的mysql 版本为 5.6.21, for osx10.6 (x86_64) 虚拟机mysql 做从库  版本为 5.5.38, fo ...

  7. python中mysql主从同步配置的方法

    1)安装mysql ubuntu中安装一台mysql了,docker安装另外一台mysql 获取mysql的镜像,主从同步尽量保证多台mysql的版本相同,我的ubuntu中存在的mysql是5.7. ...

  8. Linux mysql主从同步配置

    一.在两台Ubuntu机器上安装mysql1.检查系统中是否安装了mysql 这个是已经安装了的 没有安装的话执行上条命令===============================MySQL的一些 ...

  9. MySQL主从同步配置(详细图解)

    说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家! 目录 一丶叙述 二丶备份主服务器原有数据到从服务器 三丶配置主服务器master(192.168.4.63) 四丶配置从服务器sl ...

随机推荐

  1. UVALive 3971 组装电脑

    https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_probl ...

  2. [转]什么是SPI通信

    SPI:高速同步串行口.3-4线接口,收发独立.可同步进行. SPI,是英语Serial Peripheral interface的缩写,顾名思义就是串行外围设备接口.是Motorola首先在其MC6 ...

  3. eclipse加载maven工程提示pom.xml无法解析org.apache.maven.plugins:maven-resources-plugin:2.4.3解决方案

    pom文件提示信息: Failure to transfer org.apache.maven.plugins:maven-resources-plugin:pom:2.4.3 from http:/ ...

  4. jQuery.eq() 函数

    eq() 函数 获取当前对象中指定索引所对应的的元素 语法 $selector.eq(index)//index为指定索引,值为数字型 返回值 返回值为一个对象 实例说明 代码 <!DOCTYP ...

  5. PHP绘图

    创建图像的一般流程1.设定标头,告诉浏览器你要生成的绘图类型.2.创建一个图像区域,以后的操作都将基于此图像区域.3.在空白图像区域绘制填充背景.4.在背景上绘制图形轮廓输入文本.5.输出最终图形.6 ...

  6. 关于String的equals问题和StringBuilder问题

    今天弄了一下String和StringBuilder,遇到了一些问题. 老规矩上代码图片: 发现stringBuilder的equals方法有问题,看了一下源码,发现stringbuilder没有重写 ...

  7. MongoDB 备份(mongodump)与恢复(mongorestore)

    MongoDB数据备份 在Mongodb中我们使用mongodump命令来备份MongoDB数据.该命令可以导出所有数据到指定目录中. mongodump命令可以通过参数指定导出的数据量级转存的服务器 ...

  8. android模拟器genymotion安装virtualbox不能为虚拟电脑启动一个新任务

    错误详情如下: Unable to load R3 module C:\Program Files\Oracle\VirtualBox/VBoxDD.DLL (VBoxDD): GetLastErro ...

  9. Linux FTP的安装与配置

    Linux FTP的安装与配置   ftp安装部分,操作步骤如下: 可以使用yum命令直接安装ftp # yum install vsftpd ftp服务的开启与关闭命令: 开启:# service  ...

  10. mongodb语法备份(转)

    mongodb语法 MongoDB的好处挺多的,比如多列索引,查询时可以用一些统计函数,支持多条件查询,但是目前多表查询是不支持的,可以想办法通过数据冗余来解决多表查询的问题. 查询colls所有数据 ...