Windows系统搭下建MYSQL主从配置
MySQL解压并重命名两份
分别新建my.ini文件和data文件夹
master下my.ini文件
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[mysqld]
# 服务器标识ID
server-id=1
#二进制日志文件格式
log-bin=mysql-bin
#binlog日志格式
binlog_format=mixed
#设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=E:/tools/mysql/master
# 设置mysql数据库的数据的存放目录
datadir=E:/tools/mysql/master/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
slave下my.ini文件
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[mysqld]
# 服务器标识ID
server-id=2
#二进制日志文件格式
log-bin=mysql-bin
# 从库二进制日志
relay-log=mysql-relay
#binlog日志格式
binlog_format=mixed
#设置3307端口
port = 3307
# 设置mysql的安装目录
basedir=E:/tools/mysql/slave
# 设置mysql数据库的数据的存放目录
datadir=E:/tools/mysql/slave/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
使用管理员打开两个命令提示符窗口,进入master(主服务器)的bin目录下,安装mysqld作为window服务并自动启动
mysqld -install master
创建数据文件目录和mysql系统数据库,产生随机root密码,并写错误日志到console
mysqld --initialize --console
启动服务
net start master
进入数据库
mysql -P3306 –uroot –p
修改加密规则,更新一下用户的密码,刷新权限
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
FLUSH PRIVILEGES;
查看数据库状态
show master status \G
创建新用户并更改密码和加密规则用于共享使用
create user 'xm'@'localhost' identified by 'password';
grant all privileges on *.* to 'xm'@'localhost';
FLUSH PRIVILEGES;
ALTER USER 'xm'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
FLUSH PRIVILEGES;
重新查看一次确认位点 记录下文件名以及位点
show master status \G
进入slave(从服务器)的bin目录下,安装mysqld作为window服务并自动启动
mysqld -install slave
创建数据文件目录和mysql系统数据库,产生随机root密码,并写错误日志到console
mysqld --initialize --console
启动服务
net start slave
进入数据库
mysql -P3307 –uroot –p
修改加密规则,更新一下用户的密码,刷新权限
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
FLUSH PRIVILEGES;
先停止从数据库服务
STOP SLAVE;
连接主数据库
change master to master_host='localhost',
master_port=3306,
master_user='xm',
master_password='123456',
master_log_file='mysql-bin.000002',
master_log_pos=2121;
启动从数据库服务
START SLAVE;
查看配置成功与否,Slave_IO_Runing和Slave_SQL_Runing字段值都为Yes,表示同步配置成功。
show slave status \G
附:停止并删除服务
停止master数据库服务,退出数据库,停止服务,删除服务
stop master;
quit
net stop master
sc delete master
停止slave数据库服务,退出数据库,停止服务,删除服务
stop slave;
quit
net stop slave
sc delete slave