Linux+Docker部署 配置MySql读写分离

在下面的连接从库会用到

正在上传…重新上传取消

正在上传…重新上传取消

我们可以看见这两个状态是关闭的

正在上传…重新上传取消

再次配置从库下面已经详细的介绍了我们的从库配置(成功以后开启主从赋值 查看状态就可以了)

正在上传…重新上传取消

此处的状态已经为yes了说明我们已经配置成功了(好样的)

正在上传…重新上传取消

确保真真正正的已经成功了我们测试一下

(可以在数据主库添加一个数据表看看是否真正的主从赋值 读写分离)

到这里我们的读写分离就结束了 感谢观看

  1. 在这里MySql的安装以及配置就成功啦(下面我们配置读写分离)

  2. 我们专用的挂载好的容器(但是你如果不是最新版本MySql name就不能用MySQL 要不然他就会自定下载最新版本)
  3. //参数详解// -d守护进程// -p端口映射 -p 宿主机端口:容器端口// --privileged=true 应用容器 获取宿主机root权限// -v 绑定共享映射目录,-v 宿主机目录:容器目录

    //主库

    docker run -d -p 3306:3306 --privileged=true-v ~/docker_data/mysql-master/log:/var/log/mysql -v ~/docker_data/mysql-master/data:/var/lib/mysql -v ~/docker_data/mysql-master/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456--name mysql-master mysql

    //从库

    docker run -d -p 3307:3306 --privileged=true-v ~/docker_data/mysql-slave/log:/var/log/mysql -v ~/docker_data/mysql-slave/data:/var/lib/mysql -v ~/docker_data/mysql-slave/conf:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=123456--name mysql-slave mysql

    下面我们需要配置Linux挂载文件夹里的文件

    这里主库和从库的都已经备注好了

    //**主库配置** 这里在宿主机更新配置文件后,容器也会同步更新//在刚刚共享映射的宿主机conf目录新建my.cnf 写入以下内容//我的目录是:/docker_data/mysql-master/conf/my.cnf[mysqld]## 设置server_id 同一局域网中需要唯一

    server_id=101## 指定不需要同步的数据库名称

    binlog-ignore-db=mysql## 开启二进制日志功能

    log-bin=mall-mysql-bin## 设置二进制日志使用内存大小(事务)

    binlog_cache_size=1M## 设置使用的二进制日志格式(mixed,stateement,row)

    binlog_format=mixed## 二进制日志过期清理时间 默认值为0 表示不自动清理

    expire_logs_days=7## 跳过主从复制值遇到的所有错误或指定类型的错误,避免slave端复制中断## 如:1062错误是指一些主键重复 1032错误是因为主从数据库数据不一致

    slave_skip_errors=1062

    //**从库配置** 这里在宿主机更新配置文件后,容器也会同步更新//在刚刚共享映射的宿主机conf目录新建my.cnf 写入以下内容//我的目录是:/docker_data/mysql-slave/conf/my.cnf[mysqld]## 设置server_id 同一局域网中需要唯一

    server_id=102## 指定不需要同步的数据库名称

    binlog-ignore-db=mysql## 开启二进制日志功能

    log-bin=mall-mysql-slave1-bin## 设置二进制日志使用内存大小(事务)

    binlog_cache_size=1M## 设置使用的二进制日志格式(mixed,stateement,row)

    binlog_format=mixed## 二进制日志过期清理时间 默认值为0 表示不自动清理

    expire_logs_days=7## 跳过主从复制值遇到的所有错误或指定类型的错误,避免slave端复制中断## 如:1062错误是指一些主键重复 1032错误是因为主从数据库数据不一致

    slave_skip_errors=1062## relay_log配置中继日志

    relay_log=mall-mysql-relay-bin## log_slave_updates表示slave将复制事件写进自己的二进制日志中

    log_slave_updates=1## slave设置为只读(具有super权限的用户除外)

    read_only=1

    一主一从

    正在上传…重新上传取消

    继续

  4. 下面一步一步进入主库(对主库创建slave用户)成功以后可查看是否创建了slave  
  5. 这里我们要记住我们创建的file and position and Binlog_DB
  6. 下面一步一步配置从库进入从库
  7. 下面开始我们Putty的进程(详细讲解)
    1. 输入账户和密码(这里的账号正常输入密码是加密的看不见正常)看到Welcome to Alibaba cloud Elastic Compute Service!

           欢迎使用阿里云弹性计算服务!

正在上传…重新上传取消

安装docker

如果已安装,可以执行删除docker:

yum -y remove docker*

安装最新版本的docker
yum install docker-ce

安装成功,安装完后再次查看安装列表

正在上传…重新上传取消

2.3 启动docker

systemctl start docker

2.4 查看docker服务状态

systemctl status docker

正在上传…重新上传取消

以上说明docker安装成功

3、启动docker

给docker.service文件添加执行权限

chmod +x /etc/systemd/system/docker.service

重新加载配置文件(每次有修改docker.service文件时都要重新加载下)

systemctl daemon-reload                

启动#

systemctl start docker

设置开机启动

systemctl enable docker

systemctl enable docker.service

查看docker服务状态

systemctl status docker

停止

systemctl stop docker

重启

systemctl restart docker

# 简单信息

docker -v

# 查看docker的版本号,包括客户端、服务端、依赖的Go等

docker version

# 查看系统(docker)层面信息,包括管理的images, containers数等

docker info

  配置MySql读写分离(zz张宝成)

Begin

  1. 我们可以买几个云服务器(让我们的体验效果更好)

云服务器(阿里云 七牛云 百度云 虚拟机......)

正在上传…重新上传取消

  1. 在这里我配置的阿里云服务器(Linux系统)
  2. 下一步我们要在Linux系统上安装Docker()

Docker 这里我我们可以把它理解为是一个应用商城 方便我们配置容器 和 镜像,(这里的镜像容器不止一个是多个)

  1. 在这里我们需要安装两个非常好用的插件

正在上传…重新上传取消

上面这个是对Docker部署安装命令的用的

下面这个是Linux系统的文件夹所在位置(linux文件)百度上就能找到安装包

  1. Xft连接好后

    查看镜像文件:

    docker images: # 列出images

    docker images -a # 列出所有的images(包含历史)

    docker ps -a #列出本机所有容器

    删除docker中的安装镜像

    docker rmi 镜像id

    正在上传…重新上传取消

    如果该镜像文件已生成容器被使用,则删除失败。执行:

    docker ps -a ,查看生成容器Id,根据容器Id挨个删除容器:

    正在上传…重新上传取消

    命令:  docker rm 容器id,删除容器,前提是容器必须是停止状态

    docker rm 容器Id  #:删除一个或多个container

    docker rm `docker ps -a -q`  #:删除所有的container

    docker ps -a -q | xargs docker rm   #:同上, 删除所有的container

    停止运行中的容器:

    docker stop 容器id或容器名称, 例如:docker stop myTomcat

    启动容器中的镜像

    docker start 容器id或容器名称 ,例如:docker start  dockerdemo

    设置自启动容器中的镜像:

    docker update --restart=always 326b6b191a90  

    注意:326b6b191a90  是镜像Id,通过 docker ps -a 即可查看到

    彻底删除docker及其组件,全选,一次全部执行即可。

    yum  remove  docker \

    docker-client \

    docker-client-latest \

    docker-common \

    docker-latest \

    docker-latest-logrotate \

    docker-logrotate \

    docker-selinux \

    docker-engine-selinux \

    docker-engine

    逐个执行入下命令:

    rm -rf /etc/systemd/system/docker.service.d

    rm -rf /var/lib/docker

    rm -rf /var/run/docker

    (到这里我们的Docker就已经配置下载成功啦)加油!成功就在前方

    配置MySql 读写分离 主从复制

    Begin

  2. 查看我们知否安装过MySql(在这里我们安装过5.7版本)
  3. 如果没有安装过我们直接安装我们需要的版本就好了

    正在上传…重新上传取消

    查看MySql的版本

    正在上传…重新上传取消

    5.2我要安装5.7

    正在上传…重新上传取消

    5.3配置MySql集群(可以配置一个也可以配置多个)

    正在上传…重新上传取消

    5.4查看是否成功

    正在上传…重新上传取消

    5.5这里的两个语句(一个是查看成功的 另一个是查看所有的)

    正在上传…重新上传取消

    5.6删除配置好的两个 分支(这里出现了问题)

    正在上传…重新上传取消

    5.7查看日志错误

    正在上传…重新上传取消

     

    5.8我在这里删除后重新配置(如果上面成功就不用了在这里在配置啦)

    正在上传…重新上传取消

     

    5.9配置连接MySql

    正在上传…重新上传取消

    5.10这样就配置成功啦

    正在上传…重新上传取消

正在上传…重新上传取消

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值