您当前的位置: 首页 >  docker

庄小焱

暂无认证

  • 1浏览

    0关注

    805博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

MYSQL——docker中构建Mysql集群

庄小焱 发布时间:2020-05-06 21:38:25 ,浏览量:1

摘要

主要是介绍docker中mysql服务的构建和mysql集群的构建方式。

一、docker构建单个mysql服务 1.1 查找mysql镜像源
# 查询mysql版本

docker search mysql
1.2 拉取 MySQL 镜像
# 拉取到最新版本

docker pull mysql:latest

# 拉取指定版本的数据库(数据库库版本5.7)

docker pull mysql:5.7

1.3 查看本地镜像
docker images

1.3 运行容器

安装完成后,我们可以使用以下命令来运行 mysql 容器:

docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=密码 mysql

 参数说明:

  • -p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务。
  • MYSQL_ROOT_PASSWORD=root账户的密码:设置 MySQL 服务 root 用户的密码。

docker run -p 3306:3306 --name mysql-master -v /home/xjl/data/mysql-master/log:/var/log/mysql -v /home/xjl/data/mysql-master/data:/var/lib/mysql -v /home/xjl/data/mysql-master/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=123456  -d mysql:5.7

参数说明:

  • --name :表示容器的名字
  • -v :表示挂载卷
  • -p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务。
  • MYSQL_ROOT_PASSWORD=123456:设置 MySQL 服务 root 用户的密码。
  • mysql:5.7:表示的拉取的镜像的版本

1.4 查看容器与测试连接

通过 docker ps 命令查看是否安装成功:

 如果是msyql5.7的话远程和本地都是可以直接连接。

如果是msyql5.8的话需要修改的远程连接的方式才能连接。

#进入容器

docker exec -it 容器ID /bin/bash

#登录mysql

mysql -u root -p

修改mysql配置

use mysql

查看plugin设置

select host, user, plugin from user;

修改认证方式

本地:ALTER USER root@localhost IDENTIFIED WITH mysql_native_password BY '密码';

远程:ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';

## 可以看到root的plugin是caching_sha2_password,我们希望改成mysql_native_password
## 而这里总共有两个root,一个代表的是远程连接,一个是本地连接,所以根据自己需求修改

#添加远程登录用户

CREATE USER 'liaozesong'@'%' IDENTIFIED WITH mysql_native_password BY 'Lzslov123!';
GRANT ALL PRIVILEGES ON *.* TO 'liaozesong'@'%';

使用DBeaver连接测试

 使用代理或者是的SSH连接数据库

 

 

 

 

二、docker中的构建msyql的主从备份 2.1 master的节点的配置

2.2 slave的节点的配置

2.3 msyql的主从备份测试

三、docker构建mysql(GTID方式)主从复制实战

博文参考

Docker搭建MySQL主从集群,基于GTID - 东北小狐狸 - 博客园

https://segmentfault.com/a/1190000038223139

https://cloud.tencent.com/developer/article/1592536

docker mysql主从及双机热备。 - 简书

关注
打赏
1657692713
查看更多评论
立即登录/注册

微信扫码登录

0.4303s