当前位置: 首页 > news >正文

mysql+keepalived

文章目录

    • 一、master1
      • 创建目录
      • 写入配置文件
      • 启动master1
      • 创建 `slave` 用户并授权
      • 获取主节点当前 `binary log` 文件名和位置position
    • 二、master2
      • 创建目录
      • 写入配置文件
      • 启动master2
      • 创建 `slave` 用户并授权
      • 获取主节点当前 `binary log` 文件名和位置position
    • 三、配置主主复制
      • Master1
      • Master2
    • 四、建库验证
    • 五、数据库备份
      • master1
      • master2
    • 六、安装keepalived
      • master1的 keepalived 配置文件
        • mysql检测脚本
      • master2的 keepalived 配置文件
        • mysql检测脚本

一、master1

创建目录

mkdir /var/lib/mysql /var/lib/mysql/data

写入配置文件

innodb_buffer_pool_size (建议设置为物理内存的 60%~80%(专用数据库服务器,且只跑 MySQL 时,例如,服务器有 64GB 内存,建议设置为 40~50GB,如果服务器还跑其他服务,要适当减少,避免 OOM)

max_connections=500

innodb_buffer_pool_size=8G

vim /var/lib/mysql/my.cnf
[mysqld]
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
datadir         = /var/lib/mysql
secure-file-priv= NULL
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# 服务端默认utf8编码
character-set-server=utf8mb4
# 默认存储引擎
default-storage-engine=INNODB# 主主配置 
log-bin=binlog
server-id=1 # 另一台写2
gtid-mode=on
enforce-gtid-consistency=on
log-slave-updates=on
expire_logs_days=14
auto_increment_increment=2
auto_increment_offset=1    # 另一台写2
binlog_format=ROW# Compatible with versions before 8.0
default_authentication_plugin=mysql_native_password
skip-host-cache
skip-name-resolve[client]
#设置客户端编码
default-character-set=utf8mb4
[mysql]
# 设置mysql客户端默认编码
default-character-set=utf8mb4# Custom config should go here
!includedir /etc/mysql/conf.d/

启动master1

docker run --name mysql_master1 --restart=always \
-p 3306:3306 \
-v /var/lib/mysql/my.cnf:/etc/mysql/my.cnf \
-v /var/lib/mysql/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=qwer1234 \
-d docker.cloud-sea.top/mysql:8.0

创建 slave 用户并授权

# 进入数据库
docker exec -it mysql_master1 bash
mysql -uroot -pqwer1234
# 创建用户授权
CREATE USER 'slave'@'%' IDENTIFIED WITH mysql_native_password BY 'slave';
GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%';
flush privileges;

获取主节点当前 binary log 文件名和位置position

mysql>  SHOW MASTER STATUS;
+---------------+----------+--------------+------------------+------------------------------------------+
| File          | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set                        |
+---------------+----------+--------------+------------------+------------------------------------------+
| binlog.000003 |      868 |              |                  | 1b009ef8-a67f-11ea-8c9a-0242ac110002:1-8 |
+---------------+----------+--------------+------------------+------------------------------------------+
1 row in set (0.00 sec)

二、master2

创建目录

mkdir /var/lib/mysql /var/lib/mysql/data
http://www.lqws.cn/news/180973.html

相关文章:

  • 如何把本地服务器变成公网服务器?内网ip网址转换到外网连接访问
  • Linux 常用命令语法总结
  • 力扣面试150题--克隆图
  • Linux usb虚拟网卡配置
  • 如何防止服务器被用于僵尸网络(Botnet)攻击 ?
  • PPHGNetV2源代码解析
  • 【计算机网络】非阻塞IO——select实现多路转接
  • Redux 实践与中间件应用
  • mysql错误码 2013 解决方案
  • PC端直接打印功能(包括两张图片合并功能)
  • Java——抽象、接口(黑马个人听课笔记)
  • 关于IDE的相关知识之二【插件推荐】
  • C++.OpenGL (11/64)材质(Materials)
  • RockyLinux9.6搭建k8s集群
  • java学习电子书推荐
  • AudioRelay 0.27.5 手机充当电脑音响
  • 智能运维如何让变电所“无人值守”还能降本增效?
  • DRV8833 电机控制芯片
  • SpringBoot+MySQL家政服务平台 设计开发
  • 告别数据泥沼,拥抱智能中枢:King’s四位一体重塑科研生产力
  • PostgreSQL 技术峰会,聚焦国产生态与前沿技术
  • Opencv中的copyto函数
  • 软信天成:数据驱动型背后的人工智能,基于机器学习的数据管理
  • 降雨预测系统(机器学习)
  • 如何在没有 iTunes 的情况下备份 iPhone
  • vue-print-nb 打印相关问题
  • 大模型编程助手-Cline
  • 论文阅读:HySCDG生成式数据处理流程
  • 撰写脚本,通过发布/joint_states话题改变机器人在Rviz中的关节角度
  • Excel处理控件Aspose.Cells教程:使用 C# 在 Excel 中创建组合图表