CentOS服务器环境下MySQL主从同步配置方法

本文实例讲述了CentOS服务器环境下MySQL主从同步配置方法。分享给大家供大家参考,具体如下:

一、环境

主机:

master操作系统:centos 5.3
IP:192.168.1.222
MySQL版本:5.0.77

从机:

slave操作系统:centos 5.3
IP:192.168.1.220
MySQL版本:5.0.77

二、创建数据库

分别登录master机和slave机的

mysql:mysql –u root –p

创建数据库:

create database repl;

三、master机和slave机的相关配置

1、修改master机器中mysql配置文件my.cnf,该文件在/etc目录下

在[mysqld]配置段添加如下字段

server-id=1
log-bin=log
binlog-do-db=repl //需要同步的数据库,如果没有本行,即表示同步所有的数据库
binlog-ignore-db=mysql //被忽略的数据库

在master机上为slave机添加一同步帐号

grant replication slave on *.* to 'repl'@'192.1681.220' identified by '123456';

重启master机的mysql服务:

service mysqld restart

show master status命令看日志情况

mysql>show master status;
+-----------------+------------+-------------------+-----------------------+
| File    | Position  | Binlog_Do_DB | Binlog_Ignore_DB |
+-----------------+------------+-------------------+-----------------------+
| log.000003 |   98 | repl     | mysql     |
+-----------------+------------+-------------------+-----------------------+
1 row in set (0.00 sec)

2、修改slave机中mysql配置文件

同样在[mysqld]字段下添加如下内容

server-id=2
master-host=192.168.1.222
master-user=repl
master-password=123456
master-port=3306
master-connect-retry=60
replicate-do-db=repl //同步的数据库,不写本行表示同步所有数据库

然后重启slave机的mysql

在slave机中进入mysql

mysql>start slave;
mysql>show slave status\G;

如果Slave_IO_Running、Slave_SQL_Running状态为Yes则表明设置成功。

四、出现的问题

当我在执行start slave这条命令时,系统提示

ERROR 1200 (HY000): The server is not configured as slave; fix in config file or with CHANGE MASTER TO,

执行show slave status;又提示Empty set (0.00 sec),想不通问题在哪里

后来发现,原来slave已经默认开启,要先关闭再开启

执行

slave stop;

再执行

复制代码 代码如下:

change master to master_host='192.168.1.222',master_user='repl',master_password='123456', master_log_file='log.000003' ,master_log_pos=98;

然后执行

slave start;

这时再执行

show slave status\G

显示如下:

*************************** 1. row ***************************
   Slave_IO_State: Waiting for master to send event
    Master_Host: 192.168.1.222
    Master_User: repl
    Master_Port: 3306
    Connect_Retry: 60
   Master_Log_File: log.000003
  Read_Master_Log_Pos: 98
   Relay_Log_File: mysqld-relay-bin.000002
    Relay_Log_Pos: 229
  Relay_Master_Log_File: log.000003
Slave_IO_Running: Yes
   Slave_SQL_Running: Yes
   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: 98
   Relay_Log_Space: 229
   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
1 row in set (0.00 sec)

至此,说明配置成功。

五、测试主从服务器是否能同步

在主服务器上面新建一个表,必须在repl数据下

mysql> use repl
Database changed
mysql> create table test(id int,name char(10));
Query OK, 0 rows affected (0.00 sec)
mysql> insert into test values(1,'zaq');
Query OK, 1 row affected (0.00 sec)
mysql> insert into test values(1,'xsw');
Query OK, 1 row affected (0.00 sec)
mysql> select * from test;
+------+------+
| id | name |
+-------+------+
| 1 | zaq |
| 1 | xsw |
+-------+------+
2 rows in set (0.00 sec)

在从服务器查看是否同步过来

mysql> use repl;
Database changed
mysql> select * from test;
+------+------+
| id | name |
+------+------+
|  1 | zaq |
|  1 | xsw |
+------+------+
2 rows in set (0.00 sec)

说明已经配置成功。

希望本文所述对大家CentOS服务器维护有所帮助。

您可能感兴趣的文章:

  • centos下mysql主从同步快速设置步骤分享
  • Mysql 主从数据库同步(centos篇)
  • centos下mysql主从复制设置详解
  • CentOS下编写shell脚本来监控MySQL主从复制的教程
  • centos7下mysql5.6的主从复制详解
  • CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL)
  • CentOS+Nginx+PHP+MySQL详细配置(图解)
  • CentOS Linux 下配置Apache2+PHP5+MySQL5+GD库的方法
  • CentOS 6.6安装配置LAMP服务器(Apache+PHP5+MySQL)
  • 在CentOS 7下使用yum配置MySQL源并安装MySQL
时间: 2018-03-26

centos下mysql主从复制设置详解

安装环境:centos 5.4 mysql版本:mysql 5.1.xx 采用rpm直接安装 所需软件: xtrabackup 1.2.22 采用rpm直接安装 1. Master:/etc/my.cnf  复制代码 代码如下: [mysqld] server-id = 1log-bin innodb_flush_log_at_trx_commit=1 sync_binlog=1 datadir=/var/lib/mysql character-set-server=utf8 init_conn

CentOS 6.6安装配置LAMP服务器(Apache+PHP5+MySQL)

准备篇: CentOS 6.6系统安装配置图解教程 http://www.jb51.net/os/239738.html 1.配置防火墙,开启80端口.3306端口 vi /etc/sysconfig/iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT :wq! #保存

CentOS 6.4安装配置LAMP服务器(Apache+PHP5+MySQL)

准备篇: 1.配置防火墙,开启80端口.3306端口vi /etc/sysconfig/iptables-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT #允许80端口通过防火墙-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT #允许3306端口通过防火墙 备注:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败, 正

centos下mysql主从同步快速设置步骤分享

安装环境 centos 5.4 mysql 5.1.xx 采用rpm直接安装 xtrabackup 1.2.22 采用rpm直接安装 1. Master:/etc/my.cnf [mysqld] server-id = 1 log-bin innodb_flush_log_at_trx_commit=1 sync_binlog=1 datadir=/var/lib/mysql character-set-server=utf8 init_connect='SET NAMES utf8'设定了默认

CentOS+Nginx+PHP+MySQL详细配置(图解)

一.安装MySQL 目前web服务器已经很少有跑静态页面的,如果要跑动态网站那当然就离不开数据库,虽然在以前文章中有写MySQL是怎么安装的,但是感觉好久没装MySQL,现在只把步骤贴出来,就不做过多的讲解了 #useradd mysql #tar zxvf mysql-5.0.40.tar.gz #cd mysql-5.0.40 #./configure --prefix=/usr/local/mysql #make && make install #/usr/local/mysql/b

Mysql 主从数据库同步(centos篇)

环境: 主服务器:centos 5.2 mysql 5.1.35 源码 IP:192.168.1.22 从服务器:centos 5.2 mysql 5.1.35 源码  IP:192.168.1.33 配置: 一.主服务器 1.1.创建一个复制用户,具有replication slave 权限. mysql>grant replication slave on *.* to 'repl'@'192.168.1.22' identified by 'repl'; 1.2.编辑my.cnf文件 vi

CentOS下编写shell脚本来监控MySQL主从复制的教程

目的:定时监控MySQL主从数据库是否同步,如果不同步,记录故障时间,并执行命令使主从恢复同步状态 1.创建脚本文件 vi /home/crontab/check_mysql_slave.sh #编辑,添加下面代码 #!/bin/sh # check_mysql_slave status ip=eth0 #网卡名称 mysql_binfile=/usr/local/mysql/bin/mysql mysql_user=root #MySQL数据库账号 mysql_pass=123456 #密码

centos7下mysql5.6的主从复制详解

一.mysql主从复制介绍 mysql的主从复制并不是数据库磁盘上的文件直接拷贝,而是通过逻辑的binlog日志复制到要同步的服务器本地,然后由本地的线程读取日志里面的sql语句,重新应用到mysql数据库中. mysql数据库支持单向,双向,链式级联,环状等不同业务场景的复制,一台服务器充当主服务器master,接收来自用户的更新,而一个或多个其他服务器充当从服务器slave,接收来自主服务器binlog文件的日志内容,解析出sql,更新到从服务器. 一主一从 (A -> B, A为主,B为从

CentOS Linux 下配置Apache2+PHP5+MySQL5+GD库的方法

先安装MYSQL 服务器 解压MySQL,把所有文件复制到/usr/local/mysql [root@Bleach usr]# groupadd mysql [root@Bleach usr]# useradd -g mysql mysql [root@Bleach mysql]# cd /usr/local/mysql [root@Bleach mysql]# scrīpts/mysql_install_db --user=mysql  [root@Bleach mysql]# chown 

在CentOS 7下使用yum配置MySQL源并安装MySQL

CentOS7默认数据库是mariadb,配置等用着不习惯,因此决定改成mysql,但是CentOS7的yum源中默认好像是没有mysql的.为了解决这个问题,我们要先下载mysql的repo源. 1.由于CentOS 的yum源中没有mysql,需要到mysql的官网下载yum repo配置文件. wget http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm 2.安装yum repo文件 rpm -ivh my

CentOS 7下用yum快速安装MongoDB的方法教程

前言 MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的.MongoDB是深受广大开源爱好者支持和研究的NoSQL数据库之一,它基于灵活的JSON文档方式,非常适合敏捷开发,其高可用功能强大,支持水平扩展等众多关键特性.一如其简约而不简单的MySQL一样,安装起来也非常方便,支持源码编译安装,rpm安装以及yum安装等众多方式.本文主要讲述在CentOS 7下用yum方式快速安装MongoDB的方法,下面来一起看看吧. 一.安装环境及配置

CentOS7.6系统下使用yum配置lnmp环境的方法

一.安装版本详情 Server: MariaDB Server version: 5.5.60-MariaDB MariaDB Server [root@ln-125 ~]# cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) [root@ln-125 ~]# nginx -v nginx version: nginx/1.14.2 [root@ln-125 ~]# php-fpm -v PHP 5.4.16 (fpm-fcg

CentOS 7 下使用yum安装MySQL5.7.20 最简单方法

CentOS7默认数据库是mariadb, 但是 好多用的都是mysql ,但是CentOS7的yum源中默认好像是没有mysql的. 上一篇安装的是5.6的但是我想安装5.7的  yum安装是最简单的 尝试过编译安装各种问题,最后就决定用yum. (经过一段时间的学习又写了一篇用源码安装mysql5.7.22的 点击打开链接) 1.卸载  先停掉mysql进程   没有安装过的可以直接跳过 pkill -9 mysqld rpm -qa|grep -i mysql 用命令 yum -y rem

CentOS 7中源码安装MySQL 5.7.6+详细教程

配置说明 Linux版本:Centos7 MySQL版本:MySQL5.7.16 该文档适用于MySQL版本>=5.7.6 一.卸载CentOS7默认携带的mariadb包 # 检查mariadb安装包 [root@wing ~]# rpm -qa | grep -i mysql [root@wing ~]# rpm -qa | grep -i mariadb mariadb-libs-5.5.50-1.el7_2.x86_64 # 卸载mariadb安装包 [root@wing ~]# rpm

mysql 5.7安装 MySQL 服务无法启动但是服务没有报告任何错误

MySQL 5.7的安装有两种方式,一种是下载安装程序,点击安装,另一种是下载压缩包,直接解压,配置一下就可以运行了 个人更喜欢压缩包的形式,所以本文记录的也是压死包形式的安装(配置) https://dev.mysql.com/downloads/mysql/ 我下载的最新的是 mysql-5.7.17-win32.zip 加压到mysql-5.7.17-win32文件夹,后文提到的文件和文件夹都以此为更目录 把bin目录配置到环境变量path的后面 我的是  ;D:\mysql-5.7.17

Linux下mysql源码安装笔记

1.假设已经有mysql-5.5.10.tar.gz以及cmake-2.8.4.tar.gz两个源文件 (1)先安装cmake(mysql5.5以后是通过cmake来编译的) [root@ rhel5 local]#tar -zxv -f cmake-2.8.4.tar.gz [root@ rhel5 local]#cd cmake-2.8.4 [root@ rhel5 cmake-2.8.4]#./configure [root@ rhel5 cmake-2.8.4]#make [root@

mysql源码安装脚本分享

复制代码 代码如下: #!/bin/bashPATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/binexport PATHclear;SysName=""SysBit=""CpuNum=""RamTotal=""RamSwap=""FileMax=""MysqlVersion="Percona

Linux下安装mysql的方式(yum和源码编译两种方式)

这里介绍Linux下两种安装mysql的方式:yum安装和源码编译安装. 1. yum安装 (1)首先查看centos自带的mysql是否被安装: # yum list installed |grep mysql //若有自带安装的mysql,将其卸载 # yum -y remove mysql-libs.x86_64 (2)下载MySQL官网的yum仓库:https://dev.mysql.com/downloads/repo/yum/, # yum localinstall mysql57-

CentOS 6.5平台本地YUM配置的方法

本文实例讲述了CentOS 6.5平台本地YUM配置的方法.分享给大家供大家参考,具体如下: 拷贝光盘下的/media/CentOS_6.5_Final/ 到目录/media/rhel/ 拷贝并且创建目录 cp -rf /media/CentOS_6.5_Final/ /media/rhel/ 赋予目录权限如果后期有问题就赋予权限 chmod -R 777 /media/rhel/ 查看目录/etc/yum.repos.d/ ls -l /etc/yum.repos.d/ total 16 -r