docker二进制安装mysql_Docker搭建MySQL读写分离主从模式 & 分布式数据库中间件Mycat分库分表应用...

本文介绍了如何使用Docker进行MySQL的二进制安装,通过步骤详细展示了如何搭建MySQL读写分离的主从模式,包括配置主从节点、数据备份与导入、主从同步等。此外,还提及了分布式数据库中间件Mycat的安装,并指出Mycat不支持caching_sha2_password加密方式的问题及其解决方案。
摘要由CSDN通过智能技术生成

fe3cbf35b158492c4cd31ec854f0f831.png

一、MySQL读写分离主从模式

1. 下载镜像

docker pull mysql

当前最新版本:mysql Ver 8.0.19 for Linux on x86_64 (MySQL Community Server - GPL)

2. 启动主节点并修改配置文件

docker run -it --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql bash

修改/etc/mysql/my.cnf配置文件(还得先apt update更新软件包列表才能安装vim等编辑工具,比较繁琐,所以可以选择先配置好my.cnf文件再docker run -v 挂载进容器)

配置文件 my.cnf 修改如下:

[mysqld]

pid-file = /var/run/mysqld/mysqld.pid

socket = /var/run/mysqld/mysqld.sock

datadir = /var/lib/mysql

# 以上是原有默认配置,add variables如下:

# 在同一个Master-Slave集群里不能有重复id

server-id = 3306

# 不配置默认3306

# port= 3306

# 二进制日志文件存储路径及名称(在docker容器内涉及到权限问题,所以直接写在datadir下)

log-bin = /var/lib/mysql/binlog

# 需要开启binlog的数据库,多个则配置多行binlog-do-db

binlog-do-db = training

# binlog-do-db= db2

# binlog-do-db= db3

# 密码认证方式(加密方式) MySQL 8.0+ 默认是caching_sha2_password

# 如果需要直接连接可以如下改回老版本的mysql_native_password或者create user时identified with mysql_native_password by 针对单个用户

# default_authentication_plugin= mysql_native_password

注:修改完配置文件后需要重启mysql才能生效,一般命令是systemctl restart mysqld,但是在docker容器中没有权限执行systemctl命令,所以选择退出容器后 docker restart

docker exec -it mysql bash

mysql -uroot -p [-hx.x.x.x -P3306]

# 创建用户, @"ip"可以用@"%",不限IP

create user "replica"@"x.x.x.x" identified by "123456";

# 赋予复制权限

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值