mysql主备搭建
mysql主备搭建
参考文档https://www.cnblogs.com/clsn/p/8150036.html
前提条件:
系统:Ubuntu 16.04.6 LTS
MySQL版本:5.7.24
主库IP:192.168.225.131
从库IP:192.168.225.132
1.安装主数据库master
sudo apt-get install mysql-server
sudo apt-get install mysql-client
sudo apt-get install libmysqlclient-dev
2.安装完成master后对数据库进行配置
注意以下只是配置文件中跟主备相关的部分内容,其他配置根据需要自己进行配置即可。
[mysqld]
bind-address = 192.168.225.131 //这里的IP地址必须是通过ipconfig查出来的IP
server-id = 1
log_bin = /var/log/mysql/mysql-bin.log
expire_logs_days = 10
max_binlog_size = 100M
binlog_do_db = empw_test
#binlog_ignore_db = include_database_name
binlog_format = row # binlog的格式 row 具有 statement和mixed 不具备的优势 填写 row
sync_binlog = 1
innodb_flush_log_at_trx_commit = 1 # 和 sync_binlog 组成双1 配置 保证数据的完整性
3.完成第2步的配置后重启数据库
ubuntu为systemctl restart mysql.server
创建同步账号
CREATE USER 'sync'@'%' IDENTIFIED BY 'sync';
grant replication slave on *.* to 'sync'@'192.168.225.132' identified by 'sync';
flush privileges;
4.登录数据库查看配置是否生效
mysql -uroot -p
use mysql;
show master status;

如上图所示,标识master配置成功。
注意:在第2步中的bind-address地址,是否要配置为公网IP地址,有待进一步测试。
设置数据库可以远程访问
grant all privileges on *.* to root@'%' identified by 'xxxx' with grant option;
flush privileges;
创建备份用户
grant replication slave on *.* to repl@'%' identified by '123';
flush privileges;
5.安装从数据库slave
sudo apt-get install mysql-server
sudo apt-get install mysql-client
sudo apt-get install libmysqlclient-dev
6.安装完成slave后对数据库进行配置
注意以下只是配置文件中跟主备相关的部分内容,其他配置根据需要自己进行配置即可。
server-id = 2
bind-address = 192.168.225.132
7.完成第6步的配置后重启数据库
ubuntu为systemctl restart mysql.server
8.登录数据库配置slave
从数据库配置前需要一次初始化数据
在主数据库执行:
mysqldump -uroot -proot -A -B -F --master-data=2 >/tmp/full.sql
在从数据库执行:
mysql -uroot -p
set sql_log_bin=0;
source /tmp/full.sql
配置slave
CHANGE MASTER TO
MASTER_HOST='192.168.225.131',
MASTER_USER='repl',
MASTER_PASSWORD='123',
MASTER_PORT=3306,
MASTER_LOG_FILE='mysql-bin.000008',
MASTER_LOG_POS=154;
start slave; # 启动从库复制
该配置想关说明可以通过 help 获得。
查看slave库的状态:show slave status;
主要查看 Slave_IO_Running 与 Slave_SQL_Running 是否都为Yes

9.测试
在主数据库中创建一张表,在从数据库中进行查看即可,如果从数据库中自动创建改表表示配置成功。
mysql主备搭建的更多相关文章
- MySQL集群搭建(1)-主备搭建
数据库在任何业务中都是最重要的环节之一,这就对数据库架构提出的较高的要求.单点数据库永远不应该出现在生产环境,我们已经目睹过太多由于单点.备份缺失造成的损失,所以,搭建高可用 MySQL 集群是非常有 ...
- MySQL主备模式的数据一致性解决方案
根据阿里交易型业务的特点,以及在双十一这样业内罕有的需求推动下,我们在官方的MySQL基础上增加了非常多实用的功能.性能补丁.而在使用MySQL的过程中,数据一致性是绕不开的话题之一.本文主要从阿里 ...
- LVS+MYCAT+读写分离+MYSQL主备同步部署手册
LVS+MYCAT+读写分离+MYSQL主备同步部署手册 1 配置MYSQL主备同步…. 2 1.1 测试环境… 2 1.2 配置主数据库… 2 1.2.1 ...
- 【转载】LVS+MYCAT+读写分离+MYSQL主备同步部署手册(邢锋)
LVS+MYCAT+读写分离+MYSQL主备同步部署手册 1 配置MYSQL主备同步…. 2 1.1 测试环境… 2 1.2 配置主数据库… 2 1.2.1 ...
- LVS+Keepalived+Mysql+主备数据库架构[4台]
这是一个坑...磨了不少时间.见证自己功力有待提升... 架构图 数据库 1.安装数据库 这块不难, 直接引用:mysql安装 2.数据库主备 这块不难, 直接引用: mysql主备 虚拟VIP 重点 ...
- mysql主备配置
目录 mysql主备2 一.master配置:2 1. 修改配置文件 2 2. 登录添加账号并赋权限 2 3. 查看master信息 2 二.slave配置:2 1. 修改配置文件 2 2. 重启登录 ...
- mysql主备切换[高可用]
到这一步的时候, 是主备部署已经处理好, 请关注:mysql主备部署[高可用] 这次使用的是keepalived-1.2.22.tar.gz版, 官网地址:keeplived官网 笼统知识请自行查询百 ...
- MySQL主备复制原理、实现及异常处理
复制概述 MySQL支持三种复制方式:基于行(Row)的复制.基于语句(Statement)的复制和混合类型(Mixed)的复制. 基于语句的复制早在3.23版本中就存在,而基于行的复制方式在5.1版 ...
- mysql主备切换canal出现的问题解析
通过配置VIP,在进行主备切换时,出现的报错信息: 1.当主备节点当前binlog文件名称相同时,原主节点的position小于主备切换后的position,出现如下报错: 2020-07-02 15 ...
随机推荐
- SQL查询交集、并集、差集
两个表A 和表 T 交集 intersect 并集 UNION SQL:select df from A union select sd from T; 在Union后不加A ...
- 关于对VGA、DVI、HDMI的区别
VGA接口: DVI接口: HDMI接口 可以这么理解: 1. VGA传输普通视频信号,DVI传输高清视频信号,HDMI传输高清视频信号并支持音频传输.2. HDMI的三种接口只有大小区别,功能没有任 ...
- Linux操作系统使用RPMBUILD命令打包RPM的详细步骤
首先,我们需要了解一些预备知识,在旧版本的CentOS中,rpmbuild工具默认的工作路径是/usr/src/redhat,因为权限原因,一般用户身份不能制作rpm软件包,只能切换到root身份才能 ...
- java 注解@interface
类注解: package com.cglibs; import java.lang.annotation.ElementType; import java.lang.annotation.Retent ...
- Dart Language samples
Hello World Every app has a main() function. To display text on the console, you can use the top-lev ...
- vue-cli3项目运行时一直发http://localhost:8080/sockjs-node/info?t=1462183700002请求
报错如下图: 解决方式: 一.如果是在开发环境,应该是开发的时候网络环境变更导致,比如你切换无线网络,导致开发服务器的IP地址换了,这样开发服务器会不知道如何确定访问源.开发环境中关闭npm dev ...
- 在win10上使用premake工具和vs2017编译运行Box2D源码和Testbed
1.从github上下载Box2D源码的zip包 2.解压缩zip包 3.从premake网站下载premake5工具,解压后得到premake5.exe 4.将premake5.exe拷贝到Box2 ...
- Java工程师学习指南第2部分:JavaWeb技术世界
本文整理了微信公众号[Java技术江湖]发表和转载过的Java Web优质文章,想看到更多Java技术文章,就赶紧关注吧. IDEA中的Maven实战 老师,免费版的IDEA为啥不能使用Tomcat? ...
- 计算1-9总共九个数字可以满足abc+def=hij这样的式子
计算1-9总共九个数字可以满足abc+def=hij这样的式子:其中abcdefghij九个数字各个都不相同,它们都属于1-9个数字中: 首先,第一种方法很简单很暴力,直接枚举,这样的话时间复杂度高: ...
- 如何创建spring web 工程(maven工程)
1.在项目资源管理器右键,New-Spring Starter Project 2.设置一些参数 3.点击Next,然后勾选两个选项 4.点击finish