mysql主从搭建

来源:互联网 发布:淘宝宝贝删除了怎么办 编辑:程序博客网 时间:2024/06/11 17:36

mysql主从搭建–高可用

mysql官网参考文档(中文—–需要先登录才能下载)
https://www.mysql.com/why-mysql/white-papers/wp-mysql-5-5-replication-zh/

准备环境
- centos6.7
- mysql5.1.73
主节点 IP:172.16.190.131
从节点 IP:172.16.190.132


配置master 数据库

修改主从机子的 配置文件 vi /etc/my.cfg
这里写图片描述

这里写图片描述

从启master mysql 服务:# service mysqld restart
这里写图片描述

再登录mysql
这里写图片描述

创建数据库同步用户 并赋予权限
grant replication slave, replication client on . to ‘repl’@’172.16.190.132’ identified by ‘123456’;

刷新授权信息表
flush privileges;
这里写图片描述

mysql> show master status;
这里写图片描述

创建 edu 库、表,并写入一定量的数据,用于模拟现有的业务系统数据库

create database if not exists edu default charset utf8 collate utf8_general_ci;
use edu;
DROP TABLE IF EXISTS edu_user; CREATE TABLE edu_user (
Id int(11) NOT NULL AUTO_INCREMENT,
userName varchar(255) NOT NULL DEFAULT ” COMMENT ‘用户名’, pwd varchar(255) NOT NULL DEFAULT ” COMMENT ‘密码’,
PRIMARY KEY (Id)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT=’用户信息表’;
INSERT INTO edu_user VALUES (1,’test’,’123456’);

这里写图片描述

为保证 Master 和 Slave 的数据一致,让从数据库还原主库的备份。
备份主库:
这里写图片描述

这里写图片描述

mysql> unlock tables;

将 Master 上备份的数据远程传送到 Slave 上
scp /tmp/edu.sql root@172.16.190.132:/tmp/edu.sql
这里写图片描述

配置slave 数据库

先还原主机的备份数据 由于edu库还不存在先创建edu
mysql -uroot -pmysql -e ‘create database edu’
这里写图片描述

这里写图片描述

vi /etc/my.cnf
这里写图片描述

重启mysqld service 。登陆mysql 并 设置master信息
这里写图片描述
change master to master_host=’172.16.190.131’,master_user=’repl’,master_password=’123456’,master_port=3306,
master_log_file=’black-bin.000003’,master_log_pos=106,master_connect_retry=30;
这里写图片描述

这里写图片描述
master_host ##Master的IP地址
master_user ##用于同步数据的用户(在Master中授权的用户)
master_password ##同步数据用户的密码
master_port ##master数据库服务的端口
master_log_file ##指定Slave从哪个日志文件开始读取复制文件(可在Master上使用show master status查看到日志文件名)
master_log_pos ##从哪个POSITION号开始读
master_connect_retry #当重新建立主从连接时,如果连接建立失败,间隔多久后重试,单位为秒,默认设置为60秒,同步延迟调优参数。

查看从机同步状态
show slave status\G;
这里写图片描述

开启主从同步
mysql> start slave;
再次查看同步状态
show slave status\G;
这里写图片描述

在master中添加记录
这里写图片描述

这里写图片描述

0 0