docker安装mysql,开启主从
docker pull mysql:5.7
- 创建目录/mydata/mysql/log /mydata/mysql/conf /mydata/mysql/data
- docker run -itd --name mysql-back -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /mydata/mysql/log:/var/log/mysql -v /mydata/mysql/data:/var/lib/mysql -v /mydata/mysql/conf:/etc/mysql mysql:5.7
- docker exec -it '容器ID' bash 进入容器
主数据库
#my.cnf配置编码和忽略大小写
character_set_server=utf8
init_connect='SET NAMES utf8'
# Disabling symbolic-links is recommended to prevent assorted security risks
#symbolic-links=0
lower_case_table_names=1
my.cnf添加
server-id=1 # 服务器唯一id 保证唯一,不能重复(一般为ip最后一段)
log-bin=mysql-bin # 启用二进制日志,MySOL的bin-log的名字
binlog-do-db=mydb # 指定需要同步的数据库
重启mysql
service mysqld restart
在MySQL主上创建用于备份账号
CREATE USER 'resp'@'%' IDENTIFIED BY 'repl123456'; GRANT REPLICATION SLAVE ON *.* TO 'resp'@'%';
MySQL主上,查看bin-log的文件名和位置并记录(resp_mysql.000001 | 605 )
SHOW MASTER STATUS;
编辑MySQL从数据库上的my.cnf
注:docker映射目录创建mysql默认没有配置文件,需要自己创建,目录 /mydata/mysql/conf。也可以先临时创建一个mysql容器,把配置文件cp出来,删除容器后再重新创建挂载。
vi /mydata/mysql/conf/my.cnf
character_set_server=utf8
init_connect='SET NAMES utf8'
lower_case_table_names=1
server-id=2
执行SQL
change master to master_host='ip',master_user='resp',master_password='repl123456',master_port=13306,master_log_file='resp_mysql.000001',master_log_pos=286944;
master host:MySQL主的地址
master_user:备份的用户名
master_password:备份的用户密码
master_log_file:bin-log的文件名
master_log_pos:bin-log的位置
MySOL从上开启同步(如果主数据库之前已有数据,先备份还原到从数据库)
START SLAVE;
查看状态
show slave status
主服务器防火墙端口需要开放从数据库的IP地址,从服务器无需开启。
#修改mysql密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; #给所有权限
GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456";
docker安装mysql,开启主从的更多相关文章
- docker安装mysql主从
docker安装mysql主从 启动主库: 1.docker run --name master -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5 ...
- Docker安装mysql镜像并进行主从配置
Docker安装mysql镜像并进行主从配置 1.下载需要的mysql版本镜像 docker pull mysql:5.6 2.启动mysql服务实例(基本启动) #启动主mysql docker r ...
- 安装docker并使用docker安装mysql
安装Docker 1. Docker 教程地址:https://www.runoob.com/docker/centos-docker.install.html 2.安装docker 命令:yum i ...
- Docker安装MySQL,Redis,阿里云镜像加速
Docker安装 虚拟化容器技术.Docker基于镜像,可以秒级启动各种容器.每一种容器都是一个完整的环境,容器之间相互隔离. 如果之前安装的有其他版本,卸载旧的版本. $ sudo yum remo ...
- docker初识-docker安装、基于docker安装mysql及tomcat、基本命令
一.docker是什么 用go语言开发,开源的应用容器引擎,容器性能开销极低 二.整体架构图 Docker 包括三个基本概念: 镜像(Image):Docker 镜像(Image),就相当于是一个 r ...
- 使用Docker安装Mysql
最近使用阿里云服务器,学习一下Docker,今天学着使用Docker安装MySQL. 首先,从阿里云的Docker Hub 上pull一个MySQL的image. [centos@loovelj~]$ ...
- Docker学习实践 - Docker安装MySql数据库
Docker安装MySQL数据库 1.Ubuntu安装MySQL安装 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libnc ...
- 使用docker安装mysql和redis
本文介绍在linux下使用docker安装mysql和redis. 原文地址:代码汇个人博客 http://www.codehui.net/info/59.html 测试环境:centos7.6,do ...
- 解决Docker安装MySQL不区分大小写问题
Docker安装MySQL忽略大小写问题的问题连接MySQL: 查看当前mysql的大小写敏感配置 show global variables like '%lower_case%'; +------ ...
随机推荐
- 关于mysql使用utf8编码在cmd窗口无法添加中文数据的问题以及解决 方法二
如果非要用cmd窗口的话,那么可以加这句话,set names gbk:
- mysql查询 if判断、case语句的使用等
一. 查询的数字转换为中文返回前端 1. 如果是0或1表状态等,可用: IF(字段 = 0, '否', '是') AS xxx 2. 如果是多个值,比如1,2,3可用: ELT(字段, '计划治理', ...
- Net程序崩溃了怎么去查找定位问题
工具 这里用到两个工具分别为Procdump+Windbg Procdump:ProcDump是一个命令行实用工具,主要目的是监视应用程序,以便在管理员或开发人员可用于确定峰值的原因期间监视 CPU ...
- mongodb 数据块的迁移流程介绍
1. 基本概念 1.1 Chunk(数据块) 表示特定服务器上面,连续范围的分片键值所包含的一组数据,是一个逻辑概念. 例如,某数据块记录如下: { "_id" : "c ...
- 使用etcd选举sdk实践master/slave故障转移
本次将记录[利用etcd选主sdk实践master/slave高可用], 并利用etcdctl原生脚本验证选主sdk的工作原理. master/slave高可用集群 本文目标 在异地多机房部署节点,s ...
- CSS简单的网页布局
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="U ...
- 事务的隔离级别与MVCC
提到数据库,你多半会联想到事务,进而还可能想起曾经背得滚瓜乱熟的ACID,不知道你有没有想过这个问题,事务有原子性.隔离性.一致性和持久性四大特性,为什么偏偏给隔离性设置了级别? 一切还得从事务说起. ...
- 【在下版本,有何贵干?】Dockerfile中 RUN yum -y install vim失败Cannot prepare internal mirrorlist: No URLs in mirrorlist
隐秘的版本问题---- Dockerfile中 RUN yum -y install vim失败Cannot prepare internal mirrorlist: No URLs in mirro ...
- vue2响应式原理与vue3响应式原理对比
VUE2.0 核心 对象:通过Object.defineProtytype()对对象的已有属性值的读取和修改进行劫持 数组:通过重写数组更新数组一系列更新元素的方法来实现元素的修改的劫持 Object ...
- XCTF练习题---MISC---再见李华
XCTF练习题---MISC---再见李华 flag:Stay hungry, Stay foolish. 解题步骤: 1.观察题目,下载附件 2.拿到手以后发现是一张图片,其中有MD5,破解一下没有 ...