设为首页 收藏本站
查看: 886|回复: 0

[经验分享] CentOS6.7 mysql 主从配置

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2018-4-28 08:56:11 | 显示全部楼层 |阅读模式


MySql主服务器:
系统:CentOS 6.7(192.168.171.51)
主机名:balichvm.org
MySQL版本:5.6.26

MySql从服务器:
系统:CentOS 6.7(192.168.171.50)
主机名:balichos.org
MySQL版本:5.6.26  配置主从前的准备:
  1)、关闭selinux
  vim  /etc/sysconfig/selinux
#SELINUX=enforcing     #注释掉
#SELINUXTYPE=targeted  #注释掉
SELINUX=disabled  #增加  保存配置文件然后重启系统,或者临时关闭:

setenforce 0  2)、配置iptables,开启mysql默认的3306端口
  vim  /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp--dport 3306 -j ACCEPT  然后重启服务,使之生效。
/etc/init.d/iptables restart  配置主从步骤:
  (1)分别把需要同步的数据库导入到主数据库(balichvm.org)和从数据库(balichos.org),因为做主从需要主从数据库的实例相同。这里是mbbalichdb。
  主数据库:
mysql -u root –p                 #进入数据库的控制台
CREATE DATABASE mbalichdb;            #创建mbalichdb数据库
use mbalichdb;                 #进入数据库
source /root/mbalich.sql                   #还原数据库(导入备份文件到数据库)  

  从数据库:
mysql -u root –p             #进入数据库的控制台
CREATE DATABASE mbalichdb;       #创建mbalichdb数据库
use mbalichdb;         #进入数据库
source /root/mbalich.sql               #还原数据库(导入备份文件到数据库)  

  (2)分别在主数据库和从数据库上修改配置文件
  主数据库:
  vim /usr/local/mysql/my.cnf
server_id=1     #需要唯一,要小于从数据库;如果有就不需要添加了
log-bin=mysql-bin                       #开启mysql二进制日志系统
binlog-do-db=mbalichdb                    #需要同步的数据库
binlog-ignore-db=mysql                     #不需要同步的数据库  保存配置文件,退出。然后重启mysql服务
/etc/init.d/mysqld restart  重新登录到主Mysql控制台,为从数据库建立一个主从复制的帐号。
grant replication slave on *.* to'repl'@'192.168.171.50' identified by 'replbak.';  同时执行如下操作:
mysql> flush tables with read lock;               #锁住表,只可以读
Query OK, 0 rows affected (0.61 sec)
mysql> show master status;            #查看当前的状态,前两列需要用到
+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB |Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |      331 | mbalichdb    | mysql           |                   |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.06 sec)  从数据库:
  vim /usr/local/mysql/my.cnf
server-id=2                             #需要唯一,
log-bin=mysql-bin                    #开启mysql二进制日志系统
replicate-do-db=mbalichdb               #需要同步的数据库
replicate-ignore-db=mysql                #不需要同步的数据库  保存配置文件,退出。然后重启mysql服务
/etc/init.d/mysqld restart  (3)在从服务器上配置主从同步
  重启mysql服务后,再次进入mysql控制台,执行mysql主从同步。
  mysql -u root –p       #进入mysql控制台
stop slave;                 #停止主从同步
mysql> change master to
master_host='192.168.171.51',
master_user='repl',
master_password='replbak.',
master_port=3306,
master_log_file='mysql-bin.000001',
master_log_pos=331;  上面的一条语句是主从同步的。
start slave;                #开启主从同步  查看主从同步情况
mysql> show slave status\G;         
*************************** 1. row***************************
               Slave_IO_State: Connecting tomaster
                  Master_Host: 192.168.171.51
                  Master_User: repl
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: mysql-bin.000001
         Read_Master_Log_Pos: 331
               Relay_Log_File:balichOS-relay-bin.000001
                Relay_Log_Pos: 4
       Relay_Master_Log_File: mysql-bin.000001
            Slave_IO_Running: Yes
           Slave_SQL_Running: Yes
              Replicate_Do_DB: mbalichdb
         Replicate_Ignore_DB: mysql
          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: 331
              Relay_Log_Space: 120
              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: NULL
Master_SSL_Verify_Server_Cert: No
                Last_IO_Errno: 1045
                Last_IO_Error: error connectingto master 'repl@192.168.171.51:3306' - retry-time: 60  retries: 2
               Last_SQL_Errno: 0
               Last_SQL_Error:
Replicate_Ignore_Server_Ids:
            Master_Server_Id: 0
                  Master_UUID:
            Master_Info_File: /data/mysql/master.info
                    SQL_Delay: 0
         SQL_Remaining_Delay: NULL
     Slave_SQL_Running_State: Slave has read all relay log; waiting for theslave I/O thread to update it
          Master_Retry_Count: 86400
                  Master_Bind:
     Last_IO_Error_Timestamp: 151110 04:51:06
    Last_SQL_Error_Timestamp:
               Master_SSL_Crl:
           Master_SSL_Crlpath:
          Retrieved_Gtid_Set:
           Executed_Gtid_Set:
                Auto_Position: 0
1 row in set (0.00 sec)  注意查看:Slave_IO_Running: YesSlave_SQL_Running: Yes,两个都是yes
  (4)测试主从同步
  主数据库:
unlock tables;           #表解锁
mysql> use mbalichdb ;                      #切换数据库
Database changed
mysql> show tables;                           #查看当前数据库的表
+-----------------------+
| Tables_in_mbalichdb   |
+-----------------------+
| wp_commentmeta        |
| wp_comments           |
| wp_links              |
| wp_options            |
| wp_postmeta           |
| wp_posts              |
| wp_term_relationships |
| wp_term_taxonomy      |
| wp_terms              |
| wp_usermeta           |
| wp_users              |
+-----------------------+
11 rows in set (0.03 sec)
mysql>
mysql> create table wp_33(id int notnull primary key, name char(20));      #创建一张表。  

  从数据库:
mysql -u root –p                #登录到控制台
mysql> use mbalichdb;             #进入mbalichdb数据库
mysql> show tables;
+-----------------------+
| Tables_in_mbalichdb   |
+-----------------------+
| wp_33                 |
| wp_commentmeta        |
| wp_comments           |
| wp_links              |
| wp_options            |
| wp_postmeta           |
| wp_posts              |
| wp_term_relationships |
| wp_term_taxonomy      |
| wp_terms              |
| wp_usermeta           |
| wp_users              |
+-----------------------+
12 rows in set (0.00 sec)  在从数据库上有我们刚刚创建的wp_33表,说明可以同步了。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-452952-1-1.html 上篇帖子: centos6.4 安装163yum源 下篇帖子: Centos5.8 x86_64下安装mysql
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表