docker安装mysql主从

启动主库:

1.docker run --name master -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7.13

启动从库:

2.docker run --name slave -p 3307:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7.13

​--name 为容器指定名称,这里是master

-p 将容器的指定端口映射到主机的指定端口,这里是将容器的3306端口映射到主机的3306端口

-e 设置环境变量,这里是指定root账号的密码为root

-d 后台运行容器,并返回容器ID

docker 会自动去拉取对应版本的镜像

 3.docker ps -a

查看容器是否正常运行

 4.连接master 执行以下sq 授权复制权限的账号:

GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' IDENTIFIED BY 'slave';
SHOW GRANTS FOR 'slave'@'%';

执行结果:

修改数据库配置文件(一下操作看懂之后 也可以直接去容器操作)

5.mkdir /usr/local/mysql/master

6.mkdir /usr/local/mysql/slave

7.docker cp master:/etc/mysql/my.cnf /usr/local/mysql/master/my.cnf

8.docker cp slave:/etc/mysql/my.cnf /usr/local/mysql/slave/my.cnf

9.vi /usr/local/mysql/master/my.cnf

添加以下两行配置项:

#开启二进制日志,设置server-id,server-id值唯一
log-bin=mysql-bin
server-id=1

10.vi /usr/local/mysql/slave/my.cnf

添加以下两行配置项:

#开启二进制日志,设置server-id,server-id值唯一
log-bin=mysql-bin
server-id=2

11.docker cp /usr/local/mysql/master/my.cnf master:/etc/mysql/my.cnf

12.docker cp /usr/local/mysql/slave/my.cnf slave:/etc/mysql/my.cnf

重启两个容器: docker restart master

        docker restart slave

13.连接slave 执行一下语句设置主从复制:

change master to master_host='宿主机ip',master_port=3306,master_user='slave',master_password='slave';
start slave;
show slave status;

如果Slave_IO_State:Connecting to master 那说明配置有问题 可能是master的host  账号 密码配置错了 检查一下就重新设置一下

重新设置需先停掉从库运行:stop slave;

测试同步:在master 新建库 新建表 然后去slave刷新一下看 是否同步成功

好了 基本的mysql主从环境已经搭建完成,接下来就可以在业务上搞读写分离了 哈哈

下一篇准备写:mysql从库设置全局只读,并创建普通账号

docker安装mysql主从的更多相关文章

  1. Docker 安装mysql主从

    安装docker 1.yum -y install docker 2.查看是否安装成功 docker -v 3.接着将docker后台启动 systemctl start docker.service ...

  2. Docker安装mysql镜像并进行主从配置

    Docker安装mysql镜像并进行主从配置 1.下载需要的mysql版本镜像 docker pull mysql:5.6 2.启动mysql服务实例(基本启动) #启动主mysql docker r ...

  3. Docker容器启动Mysql,Docker实现Mysql主从,读写分离

    Docker容器启动Mysql,Docker实现Mysql主从,读写分离 一.Docker文件编排 二.配置主从复制 2.1 配置master 2.2 配置slave 三.验证主从复制 3.1 mas ...

  4. Docker构建mysql主从

    一.为什么要搭建主从架构呢 1.数据安全,可以进行数据的备份. 2.读写分离,大部分的业务系统来说都是读数据多,写数据少,当访问压力过大时,可以把读请求给到从服务器.从而缓解数据库访问的压力 3.故障 ...

  5. springboot多数据源配合docker部署mysql主从实现读写分离

    本篇主要有两部分: 1.使用docker部署mysql主从 实现主从复制 2.springboot项目多数据源配置,实现读写分离 一.使用docker部署mysql主从 实现主从复制 此次使用的是wi ...

  6. 使用Docker安装Mysql

    最近使用阿里云服务器,学习一下Docker,今天学着使用Docker安装MySQL. 首先,从阿里云的Docker Hub 上pull一个MySQL的image. [centos@loovelj~]$ ...

  7. Docker学习实践 - Docker安装MySql数据库

    Docker安装MySQL数据库 1.Ubuntu安装MySQL安装 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libnc ...

  8. 使用docker安装mysql和redis

    本文介绍在linux下使用docker安装mysql和redis. 原文地址:代码汇个人博客 http://www.codehui.net/info/59.html 测试环境:centos7.6,do ...

  9. 解决Docker安装MySQL不区分大小写问题

    Docker安装MySQL忽略大小写问题的问题连接MySQL: 查看当前mysql的大小写敏感配置 show global variables like '%lower_case%'; +------ ...

随机推荐

  1. 吴裕雄--天生自然KITTEN编程:角色交换

  2. Catch That Cow (BFS)

    题目: Farmer John has been informed of the location of a fugitive cow and wants to catch her immediate ...

  3. IP地址0.0.0.0表示什么

    参考RFC文档: 0.0.0.0/8 - Addresses in this block refer to source hosts on "this"network. Addre ...

  4. js数组中重复的对象去重

    var arr = [{ "name": "ZYTX", "age": "Y13xG_4wQnOWK1QwJLgg11d0pS4h ...

  5. Android--MediaPlayer(实现列表选歌,上一首,下一首,清空播放列表,搜索本地音乐文件)

    Android--MediaPlayer(实现列表选歌,上一首,下一首,清空播放列表,搜索本地音乐文件) 下载链接:http://download.csdn.net/detail/zlqqhs/507 ...

  6. 使用Google BBR加速 VPS

    0X00 预备知识 在使用Google BBR之前,我们首先要了解它是什么. 了解计算机网络的人都知道,在TCP连接中,由于需要维持连接的可靠性,引入了拥塞控制和流量管理的方法.Google BBR就 ...

  7. 14、创建/恢复ETH钱包身份

    借助网上的一段描述: 若以银行账户为类比,这 5 个词分别对应内容如下: 地址=银行卡号密码=银行卡密码私钥=银行卡号+银行卡密码助记词=银行卡号+银行卡密码Keystore+密码=银行卡号+银行卡密 ...

  8. android 中webview的屏幕适配问题

    两行代码解决WebView的屏幕适配问题 一个简单的方法,让网页快速适应手机屏幕,代码如下 1 2 WebSettings webSettings= webView.getSettings(); we ...

  9. Hexo搭建个人博客(一)— 前期准备

    最近几个月自学python的过程中,搜索爬虫资料的时候关注了xlzd的博客,为我开启了一片新世界,之后慢慢收藏了各方高人的博客.搭建一个自己博客的萌芽也悄然种下,也许是命运使然,在逛知乎的时候偶然间看 ...

  10. Web 项目刚要打包,却找不到项目资源?

    编程无小事,不管是语言层面还是工具层面,都要熟悉,方能在编程中过程中众享丝滑,不然就随处卡顿,耗费时间不说,还没有任何成就感.撸码过程中用 Idea 也很多年了,工具或环境遇到问题,问下度娘就完事了, ...