mysql建立主从集群
mysql建立主从集群需要多个mysql服务器,主从数据库是通过log日志来进行同步的,所以需开启log-bin。本地安装多个mysql参考底部
主数据库配置
- 打开主数据库my.ini配置文件,给其配置server_id=1
[mysqld]
port=3306
basedir=D:/phpstudy_pro/1/mysql-8.0.12-winx64/
datadir=D:/phpstudy_pro/1/mysql-8.0.12-winx64/data/
character-set-server=utf8
# 主数据库配置
server_id=1
# 配置生成的bin名称,也可以不设置
log-bin=mysql-master-bin
- 配置完成后重启mysql后进入主数据库,使用命令show master status;,查看日志文件及位置,其中File和Position在从数据库中需要使用
show master status;
从数据库配置
- 打开my.ini配置文件设置server_id=2
[mysqld]
port=3307
basedir=D:/phpstudy_pro/2/mysql-8.0.12-winx64/
datadir=D:/phpstudy_pro/2/mysql-8.0.12-winx64/data/
character-set-server=utf8
# 主数据库配置
server_id=2
# 配置生成的bin名称,也可以不设置
log-bin=mysql-slave-bin
- 配置完成后重启mysql后,进入从数据库执行以下命令连接主数据
# master_host='主数据库ip' master_port='主数据库端口号' master_user主数据库用户名 master_password='主数据库密码' master_log_pos=主数据库位置参考主数据库配置中Position master_log_file=‘主数据库中的日志名’
change master to master_host='localhost',master_port=3306,master_user='root',master_password='root',master_log_pos=155,master_log_file='binlog.000030';
- 启动从库
start slave;
4. 查看从库是否配置完成命令
show slave status\G;
5. 测试主从配置,在主数据库中新建一个数据库,成功后前往从数据库中查看是否也存在相同的数据库(如果配置成功,当在主数据库中新增了数据库,从库中会自动创建一样的数据库)
create database redisdemo;
主数据库:
从数据库:
mysql下载安装
下载地址(zip):https://dev.mysql.com/downloads/mysql/
下载完成后将其解压出来,默认可能没有my.ini和data文件夹
新建my.ini
[mysqld]
port=3306
basedir=D:/phpstudy_pro/mysql-8.0.12-winx64/
datadir=D:/phpstudy_pro/mysql-8.0.12-winx64/data/
character-set-server=utf8
# 主从数据库分别配置
server_id=2
# 日志名称
log-bin=mysql-slave-bin
使用管理员权限进入bin目录下,执行初始化命令,执行成功后会有密码,也会自动生成data文件夹
mysqld --initialize --user=mysql --console
执行创建服务命令
# 默认服务命为MySql
mysqld --install mysql8.0.12
# 启动mysql服务
net start mysql8.0.12
# 关闭服务
net stop mysql8.0.12