主服务器配置:
1)登陆MySQL数据库
mysql>mysql -uroot -p123
2)给从服务器设置授权用户
mysql>grant all slave on *.* to user1@192.168.10.2 identified by "123";
mysql>grant replication slave on *.* user1@192.168.10.2 identified by "123";
3)修改主数据库服务器的配置文件my.cnf,开 启binlog,并设置server-id的值
log-bin=mysql-bin
server-id=1
4)在主服务器上设置读锁定有效,确保没有数据库操作,以便获得一个一致性的快照
mysql>flush tables with read lock;
mysql>mysqldump test.user -l -F > /tmp/user.sql(推荐这种)
5)查看主服务器上当前的二进制日志名和偏移量值
mysql>show master status;
6)目前主数据库服务器已经停止了更新操作,生成主数据库的备份,备份的方式有两种:
1.cp全部的数据
2.mysqldump备份数据方法
如果主数据库的服务可以停止,那么直接cp数据文件应该是最快的生成快照的方法
7)主数据库备份完毕后,主数据库可以恢复写操作,剩下的操作只需要在从服务器上去执行
mysql>unlock tables;
8)把主数据库的一致性备份恢复到从数据库上,把以上的压缩包解压后放到相应的目录即可。
 
从服务器配置:
1)修改从数据库的server-id,注意server-id的值必须是唯一的,不能和主数据库的配置相同,如果有多个从服务器,每个从服务器必须有自己唯一的server-id值。
连接主服务器:
(1)在从服务器上的配置文件中:
server-id=2
master-host=192.168.10.1
master-user=user1
master-password=123
master-port=3306
log-bin=mysql-bin
#replicate-do-db=test
#replicate-do-table=test.t1
(2)重新启动MySQLd服务:
pkill mysqld
/usr/local/mysql/bin/mysqld_safe --user=mysql &
(3)查看相应的主从复制进程列表有两种:
1.processlist
mysql>show processlist \G;
如果出现:
state:waiting for master to send event
//连接主数据库为成功,而且成功获取bin-log
state:has read all ready log;waiting for the slave i/o thread to update it
//成功执行bin-log日志,正在等待着去再次连接主数据库并更新获取bin-log日志
 
2.status
mysql>show slave status\G;
如出现:
slave_IO_running:YES
//此进程负责从服务器从主服务器上读取binlog日志,并写入从服务器上的中继日志中。
slave_SQL_running:YES
//此进程负责读取并且执行中继日志中的binlog日志,
#注以上两个都为YES则表明成功,只要其中一个进程的状态是no,则表示复制进程停止,错误原因可以从“last_error”字段的值中看到。
 
(4)从数据库常用命令:
1.start slave
#启动复制进程
2.stop slave
#停止复制进程
3.show slave status
#查看从数据库状态
4.show master logs
#查看主数据库bin-log日志
5.change master to
#动态改变主服务器的配置
6.show processlist
#查看从数据库运行进程
 
MySQL常见错误
从数据库无法同步:
show slave status显示slave_SQL_running为
No,Seconds_Behind_Master为null
原因:
a.程序可能在slave上进行了写操作
b.也可能是slave机器重启后,事务回滚造成的
解决:方法一
mysql>slave stop;
mysql>set GLOBAL SQL_SLAVE_SKIP_COUNTER=1;
mysql>slave start;
 
解决:方法二
slave库,mysql>slave stop;--停掉slave服务
master库,mysql>show master status;
得到主服务器上当前的二进制日志名和偏移量
 
查看状态,然后到slave服务器上执行手动同步
mysql>change master to
master_host="192.168.10.1",
master_user="user1",
master_password='123',
master_port=3306,
master_log_file="mysql-bin.0000003",
master_log_pos=98;
启动slave服务,
mysql>slave start;
通过show slave status查看slave_SQL_running为
YES,Seconds_Behind_Master为0即为正常
 
 

mysql主从配置步骤的更多相关文章

  1. Mysql主从配置步骤与各种错误

    测试环境: 2台腾讯云服务器.CentOS 7.2 64位,1G,lnmp. PHP:5.6:Mysql:5.5 两台干净的服务器 下面开始配置主服务器(master) 1.修改配置:  log-bi ...

  2. MySQL 主主同步配置和主从配置步骤

    ★预备知识 : 1.双机热备 对于双机热备这一概念,我搜索了很多资料,最后,还是按照大多数资料所讲分成广义与狭义两种意义来说. 从广义上讲,就是对于重要的服务,使用两台服务器,互相备份,共同执行同一服 ...

  3. CentOS 7下的 Mysql 主从配置

    最近在玩mysql主从配置,在此记录一下 一.前言 1.安装两个虚拟机(CentOS 7).iP分别是192.168.47.131 和192.168.47.133.其中192.168.47.133作为 ...

  4. Mysql主从配置+读写分离

    Mysql主从配置+读写分离     MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. ...

  5. mysql 主从搭建步骤

    mysql 主从搭建步骤 1:主库开启master端bin-log 2:主库创建备份用户 3:主库全备 4:从库导入全备数据 5:从库修改change master to信息 6:从库slave st ...

  6. mysql主从配置(清晰的思路)

    mysql主从配置.鄙人是在如下环境测试的: 主数据库所在的操作系统:win7 主数据库的版本:5.0 主数据库的ip地址:192.168.1.111 从数据库所在的操作系统:linux 从数据的版本 ...

  7. 黄聪:mysql主从配置(清晰的思路)

    mysql主从配置.鄙人是在如下环境测试的: 主数据库所在的操作系统:win7 主数据库的版本:5.0 主数据库的ip地址:192.168.1.111 从数据库所在的操作系统:linux 从数据的版本 ...

  8. linux系统mysql主从配置

    一.原理 mysql主从配置的流程大体如图: 1)master会将变动记录到二进制日志里面: 2)master有一个I/O线程将二进制日志发送到slave; 3) slave有一个I/O线程把mast ...

  9. mysql主从配置和galera集群

    mariadb主从 主从多用于网站架构,因为主从的同步机制是异步的,数据的同步有一定延迟,也就是说有可能会造成数据的丢失,但是性能比较好,因此网站大多数用的是主从架构的数据库,读写分离必须基于主从架构 ...

随机推荐

  1. Pwn-TestYourMemory

    题目地址 https://dn.jarvisoj.com/challengefiles/memory.838286edf4b832fd482d58ff1c217561 32位的程序,有NX保护,拖到I ...

  2. tensorboard运行使用(排坑)记录一

    首先运行如下代码(路径根据你自己的要求更改) writer = tf.summary.FileWriter("G:/tensorflow/graph", tf.get_defaul ...

  3. 树莓派包含python2.7系统路径

  4. javaagent的实现

    实现javaagent功能的是一个叫做instrument的JVMTIAgent(linux下对应的动态库是libinstrument.so),另外instrument agent还有个别名叫JPLI ...

  5. 解决4K屏电脑显示问题

    在科技飞速发展的年代,4K屏幕不断成为电视.电脑广告的亮点功能,它在显示效果上,确实效果不错,如下图.但是,在电脑上使用是否会影响眼睛的健康问题,还没有权威的论证. 毕竟4k高清屏幕还不是主流,很多软 ...

  6. Java实现字符串反转【Leetcode】

    Write a function that reverses a string. The input string is given as an array of characters char[]. ...

  7. linux系统中启动daytime服务

    环境:vmware下面的cetos6 1. 进入/etc/xinetd.d/目录下,查看是否存在daytime服务,若不存在,则须安装: 执行命令:yum install xinetd 该命令执行后会 ...

  8. shell脚本语言与linux命令的联系与区别

    使用linux肯定是要会使用命令的,就算提供有用户界面,绝大部分功能还是要通过命令行去操作的.而shell脚本语言也是运行在linux上的脚本语言,对于服务器运维人员也是几乎必须要掌握的.而shell ...

  9. 转载一篇文章:LINQ TO SQL 大全

    https://www.cnblogs.com/chenwolong/p/lts.html 最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河 ...

  10. kali渗透综合靶机(十八)--FourAndSix2靶机

    kali渗透综合靶机(十八)--FourAndSix2靶机 靶机下载地址:https://download.vulnhub.com/fourandsix/FourAndSix2.ova 一.主机发现 ...