Mysql主从搭建-Windows版

一 环境说明

1 软件版本说明

  • 操作系统:Window server 2008 R2
  • 数据库版本:5.7.20

2 安装说明

由于是测试环境,因此是在同一主机上搭建的。主从数据库总体分配如下

数据库名称端口号角色
mysql-m13320master
mysql-s13321slave1
mysql-s23322slave2
mysql-s33323slave3

二 环境搭建

2.1 下载说明

本文采用的是免安装版本(),下载地址:
https://dev.mysql.com/downloads/mysql/

2.2 安装

首先创建4个目录,分别为:mysql-m1、mysql-s1、mysql-s2、mysql-s3。
下载完成后分别将压缩包解压到这4个目录中,并分别在目录下创建my.ini文件。
image

2.3 环境变量配置

2.3.1 my.ini配置

mysql-m1:

[mysqld]  

 log_bin = log  
 basedir = D:\\mysql57\\mysql-m1  
 datadir = D:\\mysql57\\mysql-m1\data  
 port = 3320  
 character_set_server=utf8  
 server_id = 20 

mysql-s1:

[mysqld]

 #log_bin = log 从库可以不开启binlog
 basedir = D:\\mysql57\\mysql-s1
 datadir = D:\\mysql57\\mysql-s1\data
 port = 3321
 character_set_server=utf8
 server_id = 21

mysql-s2:

[mysqld]

 #log_bin = log 从库可以不开启binlog
 basedir = D:\\mysql57\\mysql-s2
 datadir = D:\\mysql57\\mysql-s2\data
 port = 3322
 character_set_server=utf8
 server_id = 22

mysql-s3:

[mysqld]

 #log_bin = log 从库可以不开启binlog
 basedir = D:\\mysql57\\mysql-s3
 datadir = D:\\mysql57\\mysql-s3\data
 port = 3323
 character_set_server=utf8
 server_id = 23

2.3.2 初始化mysql实例

1 mysql-m1实例步骤
  1. 以管理员身份打开命令行窗口(组合键win+R,在打开中输入cmd,点击确定)。
  2. 在命令行窗口中,切换至mysql-m1/bin目录下,然后执行mysqld install mysql-m1 –defaults-file=”D:\mysql57\mysql-m1\my.ini”,提示Service successfully installed。
  3. 初始化数据,执行mysqld –defaults-file=”D:\mysql57\mysql-m1\my.ini” –initialize,稍等片刻,执行成功没有任何提示。执行成功后在mysql-m1目录下多出一个data文件夹
    image
    注:–defaults-file属性一定要,并且要对应相关目录下的my.ini不然可能会导致mysql服务无法启动。
2 其它数据库实例步骤

其它三个库参照mysql-m1的实例方法。

3 启动数据库

有两种方法可以启动数据库服务:
1、通过服务窗体,找到数据库实例名称,点击启动。
2、在命令行窗口中输入:net start mysql-m1
image

3 重置mysql的root用户密码

在实例化mysql数据库时,系统会自动生成一个root用户密码。我们可以用记事本打开data目录下的*.err文件(*一般是计算机名),找到A temporary password is generated for root@localhost: (iQ4?Ilk2p0.
。其中“(iQ4?Ilk2p0.”就是系统默认生成的密码。
image
然后在命令行窗口下执行命令,mysql -P3320 -uroot -p,然后输入密码:(iQ4?Ilk2p0.。登录成功后,执行以下命令修改root用户密码为123456。

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;

依次类推修改另外三个库的。
注:mysql -P 一定要加上,指定对应的端口号,不然是默认的3306
image

2.3.3 设置主从关系

1 在master库中创建slave用户

登录主库mysql-m1:

mysql -P3320 -uroot -p123456

登录成功后,输入命令行:

GRANT REPLICATION SLAVE ON *.* to 'testsyn'@'localhost' identified by '123456';

其中:testsyn是slave库访问主库的用户名,密码是“123456”

2查看binlog信息
mysql> show master status;

image
记录下file和position信息(log.000003和448)。

3 配置从库信息
(1) 登录mysql-s1数据库
mysql -P3321 -uroot -p123456
(2) 设置从库mysql-s1的master:
mysql> change master to master_host='127.0.0.1',master_port=3320,master_user='testsyn',master_password='123456',master_log_file='log.000003',master_log_pos=448;

image
这里的master_log_file和master_log_pos对应刚才show master status记下的参数。

(3) 从库开启数据库复制功能
mysql> start slave;

(4) 查看从库信息

mysql> show slave status\G;

image
Slave_IO_Running和Slave_SQL_Running都为YES是表示主从配置成功,若没有请检查slave授权步骤
是否有误,接着以此类推配置剩余两个从库即可。

2.4 测试主从配置是否成功

在mysql-m1中创建一个数据库

mysql -P3320 -uroot -p123456
mysql> create database study;
mysql> show databases;

image
查看从库mysql-s1是否同步

mysql -P3321 -uroot -p123456
show databases;

image
然后依次查看mysql-s2和mysql-s3。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值