IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> mysql主从集群搭建 -> 正文阅读

[系统运维]mysql主从集群搭建

主mysql开启binlog日志,创建同步用户;从机上配置同步用户并指定同步主机的binlog文件及起始位置即可使用同步用户同步主mysql的binlog日志,配置组成mysql主备集群。
主备集群上主机可以读写,但是从机只能读不能写,因为是单向同步。一般主从集群只会使用主Mysql,从机实际上只起到备份数据的作用,如果有读写分离可以分担一部分读的压力。
下面使用两台机器做一主一从的mysql主从集群搭建示例:
一、先分别安装mysql

## 创建部署目录
sudo mkdir -p /opt/MPP
sudo chown -R mysql:mysql /opt/MPP
sudo chmod -R 751  /opt/MPP


#复制安装包解压
tar -zxvf mysql-5.7.37-linux-glibc2.12-x86_64.tar.gz

## 创建mysql用户及属组
sudo groupadd mysql
sudo useradd -r -g mysql mysql
id mysql

## 创建数据目录并设置权限
#创建mysql数据目录 这里注意如果
sudo mkdir -p /data01/MPP/mysql/data
sudo chown -R mysql: mysql /data01/MPP/mysql
sudo chmod -R 775  /data01/MPP/

cd /opt/MPP/mysql-5.7.37-linux-glibc2.12-x86_64
sudo chmod -R 775  /opt/MPP/mysql-5.7.37-linux-glibc2.12-x86_64
cd /opt/MPP/mysql-5.7.37-linux-glibc2.12-x86_64

## 初始化并记录密码
sudo bin/mysqld --initialize --user=mysql --basedir=/opt/MPP/mysql-5.7.37-linux-glibc2.12-x86_64 --datadir=/data01/MPP/mysql/data

## 开启ssl加密
 sudo bin/mysql_ssl_rsa_setup  --datadir=/data01/MPP/mysql/data

## 编辑配置文件
vi /etc/my.cnf

[mysqld]
datadir = /data01/MPP/mysql/data
port = 3306
skip-name-resolve
bind-address=0.0.0.0
lower_case_table_names=1
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
log_timestamps=SYSTEM
max_allowed_packet = 120M
socket =/data01/MPP/mysql/mysql.sock
character-set-server=utf8
default-time_zone = '+8:00'
#主从机的server_id不能相同
server_id=1
log-bin=/data12/MPP/mysql/arch/mysql-bin
binlog-format=ROW
expire_logs_days=120

relay_log_purge=off
relay-log = /data12/MPP/mysql/relay/relay-bin
relay_log_info_repository = table

log_slave_updates= 1
log-bin-trust-function-creators=1
max_connections=50000
default-storage-engine = InnoDB

[mysqld_safe]
log-error = /tmp/mysql-error.log

[client]
port = 3306
socket=/data01/MPP/mysql/mysql.sock
[mysqld_safe]
pid-file=/data01/MPP/mysql/mysql93.pid

#使用mysql用户启动,若启动失败根据异常日志分析,一般是目录缺少权限
sudo chmod 771 /data01/MPP/mysql
sudo su - mysql
/opt/MPP/mysql-5.7.37-linux-glibc2.12-x86_64/bin/mysqld_safe --defaults-file=/etc/my.cnf &

#首次登陆修改密码
/opt/MPP/mysql-5.7.37-linux-glibc2.12-x86_64/bin/mysql -uroot -p
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;
-- 开启远程访问
use mysql;
update mysql.user set host='%' where user='root';
flush privileges; 
exit;


# 配置成服务
cd /opt/MPP/mysql-5.7.37-linux-glibc2.12-x86_64
sudo cp support-files/mysql.server /etc/init.d/mysql
sudo chown mysql:mysql /etc/init.d/mysql

#测试通过服务查看状态
sudo service mysql status 

二、主从同步配置

  1. 主机master配置

# 主库配置,登录主mysql并创建同步用户repl并授权(仅需要REPLICATION权限)
CREATE USER 'repl'@'10.37.62.94' IDENTIFIED BY '123456';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'10.37.62.94';
FLUSH PRIVILEGES;
# 查看状态,bin-log的文件名和当前位置在从机同步配置中有用
show master status;
  1. 从机slave配置

从机的my.cnf配置注意

从mysql和主mysql的配置基本相同,除了以下几个配置:
#从机server-id要和主机不同
server-id=2;
log_slave_updates=1
#开启同步函数
log_bin_trust_function_creators = 1

配置同步

# 从机配置开启同步替换文件名和查询的位置;
#设置主机master同步连接信息
change master to master_host='10.37.62.93', master_user='repl', master_password='123456', master_log_file='mysql-bin.000001', master_log_pos=2920;
#启动同步
start slave;
#查看同步状态
show slave status;

在这里插入图片描述

slave_IO_Running和Slave_SQL_Running都是Yes说明同步成功。

测试

从主机建表插入数据,然后进入从机查看数据是否同步。

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-05-01 16:08:03  更:2022-05-01 16:08:23 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 17:27:45-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码