文档章节

MYSQL双主架构搭建方法

陈映亮
 陈映亮
发布于 2016/06/29 14:29
字数 594
阅读 78
收藏 0
================================= 
只是本人在搭建MYSQL主从服务器的笔记 ,不一定很好,高手可以飘过
 ================================= 
双主架构       	master A  <-->   master B  
第一步;改配置文件 ->默认位置/etc/my.cnf
master的
[mysqld] 
log-bin=mysql-bin  # 开启二进制日志
server-id=2   #ID的区分,两台主机的ID要不一样

slave的
 [mysqld]
 server-id=3

然后重启服务
第二步:授权

MySQL报错:The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement

解决办法:

mysql> set global read_only=0;
(关掉新主库的只读属性)

 flush privileges;
 

set global read_only=1;(读写属相)

 flush privileges;

 

master上授权,super和replication slave都是复制要用的权限
mysql> grant super,replication slave on *.* to 'jerry'@'10.1.1.7' identified by '123';
mysql> flush privileges;


mysql> show master status;	--只有打开二进制日志,这句命令才有结果,表示当前数据库的二进制日志写到什么位置
+------------------+----------+--------------+------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------------+----------+--------------+------------------+
| mysql-bin.000001 |      563 |              |                  |
+------------------+----------+--------------+------------------+


slave端的配置
mysql> slave stop;	--如果没有启过slave,这一步也是非必要的
Query OK, 0 rows affected, 1 warning (0.00 sec)


mysql> show warnings;	
+-------+------+--------------------------------+
| Level | Code | Message                        |
+-------+------+--------------------------------+
| Note  | 1255 | Slave already has been stopped | 
+-------+------+--------------------------------+

//此处为从的设置:需要master先授权
mysql> change master to
    -> master_user='jerry',
    -> master_password='123',
    -> master_host='10.1.1.6',		--主的IP
    -> master_port=3306,			--端口,如果为3307就要换成3307
    -> master_log_file='mysql-bin.000001',	--主上面查到的文件名
    -> master_log_pos=563;			--主上面查到的位置号
change master to master_user='jerry',master_password='123',master_host='10.1.1.6',master_port=3306,master_log_file='mysql-bin.000001',master_log_pos=563;
mysql> start slave;
Query OK, 0 rows affected (0.00 sec)


mysql> show slave status\G
*************************** 1. row ***************************
               Slave_IO_State: Waiting for master to send event
                  Master_Host: 10.1.1.6
                  Master_User: li
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000001
          Read_Master_Log_Pos: 563
               Relay_Log_File: mysql55-relay-bin.000002
                Relay_Log_Pos: 253
        Relay_Master_Log_File: mysql-bin.000001
              Slave_IO_Running: Yes
            Slave_SQL_Running: Yes   --这里两个YES,表示两个线程OK
              Replicate_Do_DB: 
          Replicate_Ignore_DB: 
           Replicate_Do_Table: 
       Replicate_Ignore_Table: 
      Replicate_Wild_Do_Table: 
  Replicate_Wild_Ignore_Table: 
                   Last_Errno: 0
                   Last_Error: 
                 Skip_Counter: 0
          Exec_Master_Log_Pos: 563
              Relay_Log_Space: 411
              Until_Condition: None
               Until_Log_File: 
                Until_Log_Pos: 0
           Master_SSL_Allowed: No
           Master_SSL_CA_File: 
           Master_SSL_CA_Path: 
              Master_SSL_Cert: 
            Master_SSL_Cipher: 
               Master_SSL_Key: 
        Seconds_Behind_Master: 0
Master_SSL_Verify_Server_Cert: No
                Last_IO_Errno: 0
                Last_IO_Error: 
               Last_SQL_Errno: 0
               Last_SQL_Error: 
  Replicate_Ignore_Server_Ids: 
             Master_Server_Id: 2
1 row in set (0.00 sec)

...................................

***** Slave_IO_Running 为NO,多为授权或者防火墙设置的问题。此处一般为SQL连接问题所至
=================================
以上为一主一从的设置方法,如果要设置双主,就是所主从的关系变下,更新再设置一遍就是又主
注意点:
    1. 授权记得要清下权限 flush privileags;
    2. 记得防火墙的设置,主从服务器要PING得通
    3. selinux  (这个,我经常会忘记这块的设置)
 =================================

© 著作权归作者所有

共有 人打赏支持
陈映亮
粉丝 9
博文 130
码字总数 38454
作品 0
深圳
程序员
MMM+Amoeba搭建MySQL高可用负载均衡群集

MySQL的主从复制和MySQL的读写分离两者有着紧密联系,首先要部署主从复制,只有主从复制完成了,才能在此基础上进行数据的读写分离。MySQL的读写分离就是只在主服务器上写,只在从服务器上读...

cchenyz
07/22
0
0
MySQL集群之五大常见的MySQL高可用方案(转)

1. 概述 我们在考虑MySQL数据库的高可用的架构时,主要要考虑如下几方面: 如果数据库发生了宕机或者意外中断等故障,能尽快恢复数据库的可用性,尽可能的减少停机时间,保证业务不会因为数据...

easonjim
2017/10/07
0
0
企业中MySQL高可用集群架构三部曲之MM+keepalived

各位老铁们,老张与大家又见面了。看到各位在博客里面给我的留言和访问量的情况,我很是欣慰,也谢谢大家对我的认可。我写这些博客,就是想把自己对于MySQL数据库的一些看法和自己平时的实战...

superZS
06/26
0
0
关于双主的一些说明【91洲际哥的笔记】

首先声明一下,双主这种架构个人不怎么喜欢,所以这里只做简单说明与吐槽 Ⅰ、双主架构介绍 M/S(A) <====> S/M(B) 为什么要这么做呢?有什么意义呢? 我也不知道 Ⅱ、双主搭建 主上操作change ...

我的二狗呢
07/29
0
0
实现MySQL读写分离 部署集群基础环境(有图)

1 实现MySQL读写分离 1.1 问题 本案例要求配置2台MySQL服务器+1台代理服务器,实现MySQL代理的读写分离: 1.2 方案 使用4台RHEL 7.2虚拟机,如图-1所示。其中192.168.4.10、192.168.4.20分别...

两条小鱼
06/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

day60-20180818-流利阅读笔记-待学习

钉钉:工作的归工作,生活的…也归工作? 毛西 2018-08-18 1.今日导读 你用过“钉钉”么?被公司要求使用钉钉的感受是如何的呢?这款阿里巴巴旗下的移动办公社交平台在弯道超车微信、为许多企...

aibinxiao
51分钟前
8
0
Kubernetes的HTTPS和证书问题,汇总

通过Kubernetes建立服务网站,需要干的事情和HTTPS和证书问题,汇总如下: 建立Nginx服务器 搞服务器第一步,Ubuntu 18.04设置静态IP 安装Nginx服务。 Kubernetes的deployment使用 创建服务,...

openthings
今天
2
0
php 使用redis锁限制并发访问类

1.并发访问限制问题 对于一些需要限制同一个用户并发访问的场景,如果用户并发请求多次,而服务器处理没有加锁限制,用户则可以多次请求成功。 例如换领优惠券,如果用户同一时间并发提交换领...

豆花饭烧土豆
今天
0
0
Linux环境搭建 | 手把手教你配置Linux虚拟机

在上一节 「手把你教你安装Linux虚拟机」 里,我们已经安装好了Linux虚拟机,在这一节里,我们将配置安装好的Linux虚拟机,使其达到可以开发的程度。 Ubuntu刚安装完毕之后,还无法进行开发,...

良许Linux
今天
0
0
(三)Nginx配置·续

概述 前文写了关于Nginx环境配置,但是还没有完,接下来将会继续讲三个相关的配置 主要是以下三个 1.Nginx访问日志 2.Nginx日志切割 3.静态文件不记录日志和过期时间 Nginx访问日志 1.先看看...

杉下
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部