传统的安装mysql的方式太过于繁琐,这里使用docker进行安装mysql,我这里使用的是两台服务器,当然一台服务器安装两个mysql服务也是可以的,关于docker的安装和一些常用的命令,还有关于docker安装一些常用软件的命令,这里顺便放一下尚硅谷Docker学习脑图,微云下载链接 脑图知识时间较早 参考既可
首先我们需要在服务器上安装docker 启动mysql镜像,这里我准备了两台服务器,mysql 版本均为 5.7 版本 ( 谷歌云免费服务器,国内如何注册使用可以私信 )
一, 首先配置 master 主数据库,流程如下
进行mysql镜像的配置文件目录,修改 my.cnf ,如果 vi 命令不能使用,需要在容器内部执行安装 vim命令 ,如果安装失败,需要先执行更新命令
进行mysql配置文件目录下
apt-get update
apt-get install vim
vi my.cnf
下面是实际操作的流程
[root@instance-2 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6326e3dc9c3a mysql:5.7 "docker-entrypoint.s…" 12 minutes ago Up 12 minutes 0.0.0.0:3306->3306/tcp, 33060/tcp mysql
[root@instance-2 ~]#
[root@instance-2 ~]# docker exec -it 6326e3dc9c3a /bin/bash
root@6326e3dc9c3a:/# cd /etc/mysql
root@6326e3dc9c3a:/etc/mysql# ls
conf.d my.cnf my.cnf.fallback mysql.cnf mysql.conf.d
root@6326e3dc9c3a:/etc/mysql# vi my.cnf
bash: vi: command not found
root@6326e3dc9c3a:/etc/mysql# apt-get install vim
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package vim
root@6326e3dc9c3a:/etc/mysql# vi my.cnf
bash: vi: command not found
root@6326e3dc9c3a:/etc/mysql# apt-get update
...
root@6326e3dc9c3a:/etc/mysql# apt-get install vim
修改 my.cnf 文件,加入以下内容
[mysqld]
## 注意要唯一
server-id=1
## 开启二进制日志功能
log-bin=mysql-bin
接下来我们修改从库的配置,前置操作跟主库一样,修改从库的 my.cnf 加入一下内容
[mysqld]
## 设置server_id,注意要唯一
server-id=2
## 开启二进制日志功能
log-bin=mysql-slave-bin
relay_log=edu-mysql-relay-bin
修改完以上配置后,我们重启 mysql 和 docker
service mysql restart
docker start mysql
接下来我们通过 Navicat 连接上mysql ,在主库执行命令 : show master status;
接下来在从库执行以下命令
change master to master_host='主库ip', master_user='主库mysql用户名', master_password='主库mysql密码', master_port=3306, master_log_file='上图的file值', master_log_pos= 上图的position值, master_connect_retry=60 重试的时间间隔/秒;
然后开启开启主从复制,查询从库连接状态, 从库连接正常,
接下来我们在主库进行 新建数据库,新建表 增删改查等操作时,查询从库就会看到相同的数据变化了
详细信息和故障信息,可查询mysql官网进行查询了解