一.安装环境

1、系统环境

系统 IP 主机名 说明 server_id
centos6.7 192.168.0.173 master 数据库:主 173 
centos6.7 192.168.0.174 slave 数据库:从 174

2、管理账号

linux服务器账号/密码 数据库管理员账号密码 主从复制账号
root/zxfly zxfly/zxfly zxfly_slave/zxfly

3、检查mysql环境需求

mysql安装:http://www.cnblogs.com/feiren/p/7697767.html

1)主库需要开启binlog参数

#主库上查看
cat /etc/my.cnf|grep 'log_bin'
log_bin=mysql_bin

2)确保服务器的server_id的值唯一

#MySQL-master
cat /etc/my.cnf|grep 'server-id'
server-id=173
#MySQL-slave
cat /etc/my.cnf|grep 'server-id'
server-id=173

3)确保服务器正常运行

#监测方法有
ps -ef|grep mysql
ss -lntup|grep 3306
service mysqld status

二.部署过程

#master上的操作

登录mysql以root用户登录:

mysql -uroot -pup366.com

1、添加并授权主从复制账号

mysql>grant replication slave on *.* to 'zxfly_slave'@'192.168.0.%' identified by 'zxfly';
mysql>flush privileges;

2、查看数据库当前的位置点信息

#查看到的位置点要记录,下面会用到
mysql>show master status;

##如果主从不是新部署的环境,请执行以下操作。否则跳过

3、全备数据库

mysqldump -uroot -pzxfly -A -B -R --master-data=2 --events --single-transaction >/root/all.sql

4、将全备发送到从库

scp /root/all.sql 192.168.0.174:/root/

#slave上的操作

#主从非新部署环境请执行步骤1的操作,否则跳过。

1、导入全备,将主库的全备导入从库的数据库中。

mysql –uroot –pzxfly </root/all.sql

2、登陆从库的数据库执行同步信息的账号位置点的录入

change master to
master_host='192.168.0.173', #主库所在主机IP
master_port=3306, #主库端口
master_user='zxfly_slave', #授权的同步账号
master_password='zxfly', #授权账号的密码
MASTER_LOG_FILE='mysql_bin.000001', #在主库上查看的最新的binlog
MASTER_LOG_POS=120; #在主库上查看的最新的位置点

3、开始同步

mysql>start slave;

三.验证

1、从库执行

mysql -uroot -p -e "show slave status\G"|egrep 'Slave_IO_Running:|Slave_SQL_Running:'

#过滤出来如果是两个yes及为同步成功

2、可以对主库进行测试,主要为增删改操作看从库是否同步。

3、报错信息一览

错误代码:

2003   #检查主从复制账号是否输入错误,防火墙是否允许通过

1045  #查看账号权限是否正常

1236  #查看binlog位置点是否错误,binlog日志名字是否错误

mysql主从部署的更多相关文章

  1. centos7.+系统,mysql主从部署

    两台服务器或者两个虚拟机 主库:master    IP:192.168.85.152 从库:slave      IP:192.168.85.153 关闭主库防火墙或者放行mysql的3306端口, ...

  2. mysql主从同步+mycat读写分离+.NET程序连接mycat代理

    背景 最近新项目需要用到mysql数据库,并且由于数据量大的原因,故打算采用1主1从(主数据库负责增.删.改操作:从数据库负责查操作)的数据库架构,在实现主从之后还要实现读写分离的代理,在网上搜寻了很 ...

  3. 在 CentOS7 上部署 MySQL 主从

    在 CentOS7 上部署 MySQL 主从 通过 SecureCRT 连接至 MySQL 主服务器: 找到 my.cnf 文件所在的目录: mysql --help | grep my.cnf 一般 ...

  4. MySQL主从同步原理 部署【转】

    一.主从的作用:1.可以当做一种备份方式2.用来实现读写分离,缓解一个数据库的压力二.MySQL主从备份原理master 上提供binlog ,slave 通过 I/O线程从 master拿取 bin ...

  5. MySQL主从及主主环境部署

    主从同步 主机环境 mysql的安装可以参考:https://www.cnblogs.com/brianzhu/p/8575243.htmlCentos7版本master:192.168.192.12 ...

  6. Mysql主从同步(1) - 概念和原理介绍 以及 主从/主主模式 部署记录

    Mysql复制概念Mysql内建的复制功能是构建大型高性能应用程序的基础, 将Mysql数据分布到多个系统上,这种分布机制是通过将Mysql某一台主机数据复制到其它主机(slaves)上,并重新执行一 ...

  7. 部署mysql主从同步

                                                 mysql-day06        部署mysql主从同步 案例拓扑 • 一主.一从 – 单向复制时,建议将 ...

  8. django 本地项目部署uwsgi 以及云服务器部署 uwsgi+Nginx+Docker+MySQL主从

    一 .django 本地项目部署uwsgi 1 本地部署项目 uwsgi安装测试 通过uwsgi 进行简单部署 安装uwsgi命令:pip install uwsgi -i http://pypi.d ...

  9. springboot多数据源配合docker部署mysql主从实现读写分离

    本篇主要有两部分: 1.使用docker部署mysql主从 实现主从复制 2.springboot项目多数据源配置,实现读写分离 一.使用docker部署mysql主从 实现主从复制 此次使用的是wi ...

随机推荐

  1. sed替换字符串(变量)

    sed “s/查找字段/替换字段/g” echo helloworld|sed  ‘s/hello/world/g’ sed 替换字符串以变量形式 1.sed命令使用双引号的情况下,可以使用$var( ...

  2. js 次方 开方 对数

    次方 ,用Math.pow(值,次方数) 如: Math.pow(3,2);   3的平方 Math.Pow(2,3);   2的立方 开方Math.sqrt(值) 如: Math.sqrt(9);  ...

  3. C#调试C++DLL库

    C#调试C++DLL库 https://blog.csdn.net/gggg_ggg/article/details/51086089 对于托管代码调用非托管DLL文件,已经是非常普遍的事情,下面写一 ...

  4. ip网络

  5. uinxSocket 与 tcpSocket

    $tpc = stream_socket_client('unix:///tmp/php-cgi.sock');nginx配置中可以用uninx:/tmp/php-.....这种格式,也可用直接uin ...

  6. php mqtt client

    <?php /* phpMQTT */ class phpMQTT { private $socket; /* holds the socket */ private $msgid = 1; / ...

  7. 服务注册与发现—Eureka

    一:Eureka简介 Eureka的意思是(因找到某物,尤指问题的答案而高兴) 我发现了,我找到了,作为一个服务注册和发现中心的名字确实很贴切啊. Eureka包含两个组件,Eureka Server ...

  8. 使用Lombok总结

    Lombok学习总结 Project Lombok is a java library that automatically plugs into your editor and build tool ...

  9. Python for循环生成列表

    一般Python for语句前不加语句,但我在机器学习实战中看到了这两条语句: featList = [example[i] for example in dataSet] classList = [ ...

  10. Django项目配置参数大全

    数据库的配置 配置文件: settings.pyDATABASES = { # 'default': { # 'ENGINE': 'django.db.backends.sqlite3', # 'NA ...