Centos7+Mysql5.7实现主从复制

Centos7+Mysql5.7实现主从复制

在生产用途中为了实现更大的吞吐和高可用可能会对数据库做主从复制或者集群,我们先从主从复制说起。

一、安装配置mysql7:

-安装mysql7: http://blog.csdn.net/jiaoshenmo/article/details/50964280
安装好mysql之后启动:

service mysqld start

查看mysql初始密码:

cat /var/log/mysqld.log | grep ‘password’


连接mysql:

mysql -u root -p

输入刚刚log里面显示的密码
修改密码:

ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘新密码’ PASSWORD EXPIRE;

如果没有修改可以用:

SET PASSWORD = PASSWORD(‘新密码’);

执行下图中的命令,使mysql支持远程连接:

开通防火墙3306端口(centos7默认防火墙为firewall不是iptables)

[[email protected] ~]# firewall-cmd –add-port=3306/tcp  
 [[email protected] ~]# firewall-cmd –permanent –add-port=3306/tcp
 [[email protected] ~]# firewall-cmd –reload success
 现在你的mysq已经可以正常使用啦!

二、配置主从:

我这有三台安装好mysql的服务器,一台做master,另外两台为slave:

master:10.99.123.14  
 slave:10.99.123.15
  slave:10.99.123.16

master配置:
找到mysql配置文件my.cnf在末尾加上:

log-bin=mysql-bin #slave会基于此log-bin来做replication
 server-id=1  #master的标示  
 innodb_flush_log_at_trx_commit=1
 sync_binlog=1

slave配置:
找到mysql配置文件my.cnf在末尾加上:

server-id=2 #slave的标示 ,10.99.123.15配置
 server-id=3 #slave的标示 ,10.99.123.16配置

在master中增加用于数据同步的账户:

grant replication slave on . to 用户名@% identified by ‘密码’

在master中查看Master status

show master status;


配置slave:

stop slave;
 change master to
 master_user=’repl_user’,master_password=’[email protected]’,master_host=’10.99.123.14’,master_port=3306,master_log_file=’localhost-bin.000001’,master_log_pos=36884979;
 start slave;

测试已经可以使用,单条数据的变化秒同步,批量导入70W数据,两台slave同步一共占用不到6分钟。

时间: 2024-11-05 21:41:42

Centos7+Mysql5.7实现主从复制的相关文章

MySQL5.6 Replication主从复制(读写分离) 配置完整版

MySQL5.6主从复制(读写分离)教程 1.MySQL5.6开始主从复制有两种方式: 基于日志(binlog): 基于GTID(全局事务标示符). 需要注意的是:GTID方式不支持临时表!所以如果你的业务系统要用到临时表的话就不要考虑这种方式了,至少目前最新版本MySQL5.6.12的GTID复制还是不支持临时表的. 所以本教程主要是告诉大家如何通过日志(binlog)方式做主从复制! 2.MySQL官方提供的MySQL Replication教程: http://dev.mysql.com/

mysql5.5.44 主从复制master and slave have equal MySQL server ids

mysql5.5.44  主从复制配置 注:mysql从5.1.7以后开始就不支持my.cnf中"master-host"类似的参数; 必须在slave 的mysql中执行以下命令(最后的pos没有引号): mysql> change master to master_host='192.168.137.100', master_user='tongbu', master_password='123456', master_log_file='mysql-bin.000014',

centos7下mysql5.6的主从复制

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

centos7上mysql5.6版本主从复制

做主从复制实验: 第一步:主服务器上操作 1.修改主服务器master: [[email protected] ~]# vim /etc/my.cnf server_id = 1  //[必须]服务器唯一ID,默认是1 log-bin=mysql-bin //[必须]启用二进制日志 2.重启主数据库 [[email protected] ~]# systemctl restart mysqld 3.在主服务器上建立帐户并授权slave: mysql> grant replication slav

mysql-5.7.22主从复制搭建

mysql7.7.22主从复制 本项目是根据真实环境搭建编写出文档,文档中的目录也是根据自己公司环境所创建.公司原来是一台服务器搭建的数据库(5.7.22),由于业务的扩展需要搭建一台从服务器,减轻主服务器的压力.两台服务器的数据库搭建方法是一样的,就是主从配置时候不一样. 一.  系统版本及安装所需要的环境 系统:Centos7.1两台 Master:192.168.161.141 Slave: 192.168.161.140 安装开发工具,如果你源码安装软件就需要安装这个. yum -y g

CentOS-7.5 搭建 MySQL 主从复制

一.实验环境两台同样配置的CentOS-7.5虚拟机:两台虚机的防火墙+selinux均关闭:两台虚机均可以上外网:master:CentOS-1(192.168.218.128)slave: CentOS-2 (192.168.218.136) 二.搭建主从复制1)两台服务器同时安装MySQL服务说明:因为本人之前已经写过"CentOS-7.5 安装 社区版 MySQL-5.7"这样的博文,所以在此就不在做重复性动作了:两台虚拟机安装MySQL服务的操作是一摸一样的,直接复制粘贴即可

Centos6.5 源码搭建MYSQL5.5+MySQL主从复制

实验环境: 主服务器IP:192.168.1.188 从服务器IP:192.168.1.189 一.安装MySQL由于centos6.5系统默认安装了MySQL,所以需要卸载掉自带的mysql,主,从服务器都要执行相同操作 [[email protected] ~]# yum remove mysql  ##卸载mysql [[email protected] ~]# cd /opt/    ##将mysql源码包下载到/opt目录下 [[email protected] opt]# ls my

MySQL5.7 Replication主从复制配置教程

最近配置mysql5.7主从复制的时候碰到了些问题,老老实实按老版本的步骤配置会有错误,所以下面介绍一下5.7的配置步骤, 大体步骤跟老版本的还是一样的,只是有一些小区别,不说了,言归正传. 官方文档:http://dev.mysql.com/doc/refman/5.7/en/replication.html 系统环境:win7 我只安装了核心的server,其他配套工具没安装.安装后发现根目录下有一个my-default.ini文件,我就把该文件改名成my.ini,打开这个文件文件内容如下

Mysql5.7 ssl主从复制

此文章来自 乌龟运维 wuguiyunwei.com 基于ssl安全连接的主从复制 环境 Mysql5.7  主 ip:192.168.6.189 从ip:192.168.6.135 在(主)mysql创建SSL/RSA文 结果如下 因拿root执行需配置ssl文件为chown mysql:mysql  &&  重新启动 从下图可以看到mysql以成功支持ssl安全连接 注: internet复制建议采用ssl连接 在master上创建复制账号:require ssl 在master上启用