加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

windows上 mysql如何进行主从数据库创建及问题是什么

发布时间:2023-08-08 13:19:59 所属栏目:MySql教程 来源:
导读:今天就跟大家聊聊有关windows上mysql如何进行主从数据库搭建及问题是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。根据前篇web项目的搭建后,需要

今天就跟大家聊聊有关windows上mysql如何进行主从数据库搭建及问题是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

根据前篇web项目的搭建后,需要搭建主从数据库,这里在windows服务器上搭建了主从结构的mysql,这里在记录下在本机模拟搭建过程

在windows上安装和linux还是有些不同,不注意就会耽误不少时间

一 下载安装包和安装

https://dev.mysql.com/downloads/file/?id=469273 下载的安装包是Archive

需要手工安装且建立服务和初始化data目录,具体可以在网上搜索有很多具体安装方法。

二 建立从节点

1把主服务器的安装目录C:\Program Files\MySQL\MySQL Server 5.7所有文件都copy到另一个目录D:\anzhuang\MySQL\mysqlSlave\MySQL Server 5.7。

2修改复制过来的my.ini文件参数

包括端口和路径

port = 3307

basedir = "D:\anzhuang\MySQL\mysqlSlave\MySQL Server 5.7"

datadir = "D:\anzhuang\MySQL\mysqlSlave\MySQL Server 5.7\data"

3建立mysql从服务器服务

mysqld install MySQLM --defaults-file="D:\anzhuang\MySQL\mysqlSlave\MySQL Server 5.7\my.ini"

4修改对应注册表里服务启动项的内容

注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\MySQL57\ImagePath里使用的路径改成

"D:\anzhuang\MySQL\mysqlSlave\MySQL Server 5.7\bin\mysqld" --defaults-file=D:\anzhuang\MySQL\mysqlSlave\MySQL Server 5.7\my.ini MySQLS

mysqld_multi.pl --defaults-extra-file=D:\anzhuang\MySQL\mysqlSlave\MySQL Server 5.7\my.ini start 3307

以便启动mysql时可以找到对应my.ini文件启动

三 主节点配置

1修改主节点和从节点上my.ini

[mysqld]

server-id = 1  

binlog-do-db=test #要同步的数据库

#binlog-ignore-db=mysql  #不同步的数据库,如果指定了binlog-do-db这里应该可以不用指定的

log-bin=mysql-bin #要生成的二进制日记文件名称

修改从配置文件:

[mysqld]

server-id = 2

log-bin   = mysql-bin

replicate-do-db=test

2上创建用户并授权

create user 'repla'@'127.0.0.1' identified by 'test';

GRANT REPLICATION SLAVE ON *.* TO 'repla'@'127.0.0.1';

3创建test数据库

4 物理备份test目录到从库

把datadir指定的目录的data目录copy到从目录

5 show master status

查看file和position字段对应的参数;

+------------------+----------+--------------+------------------+--------------

----+

| File            | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid

Set |

+------------------+----------+--------------+------------------+--------------

----+

| mysql-bin.000006 |    1847 | test        |                 |

   |

+------------------+----------+--------------+------------------+--------------

 

四从节点配置

1启动从节点mysql服务

mysql -uroot -P3307 -p123456 如果端口不同,必须制定端口,才能在一台机器上同时启动多实例

2 接收主节点传送日志

change master to master_host='127.0.0.1',master_port=3306,master_user='repla',master_password='test',master_log_file='mysql-bin.000006',master_log_pos=1847;

3启动从数据库复制功能

start slave

最后在主库插入数据后,从库就能看到主库的数据了。

问题总结

1这里的my.ini文件在注册表里有指定,无论是否使用命令指示使用自己命令的ini,系统都会根据注册表里的my.ini文件位置去读取并启动db。

比如用命令C:\Program Files\MySQL\MySQL Server 5.7\bin>mysql --defaults-file="D:\anzhuang\MySQL\my.ini" -uroot -p

想使用自己定义的my.ini.但注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\MySQL57\ImagePath里使用的路径不是

这个路径时,还会按照注册表的路径读取文件。

如果在windows上安装,要正确识别my.ini位置,具体可根据服务选择或注册表信息判断my.ini位置

2 备份时可采用物理备份和逻辑备份,如果是物理备份注意把主库的data目录下的全部文件复制到slave

这个data目录一定是datadir参数中指定的目录,这点可能会采用软件安装目录下的data目录而不是数据目录

3 采用物理备份时很可能把auto.cnf文件也复制到slave,造成主备之间的UUID不一致,这里的解决办法是在slave

重新命名auto.cnf,然后重启备库,重新生成新的UUID

可以参考网址http://www.linuxidc.com/Linux/2015-02/113564.htm

4 在slave上需要验证主从是否开始传送日志方法

mysql> show slave status\G

*************************** 1. row ***************************

              Slave_IO_State: Waiting for master to send event

                 Master_Host: 127.0.0.1

                 Master_User: repla

                 Master_Port: 3306

               Connect_Retry: 60

             Master_Log_File: mysql-bin.000011

         Read_Master_Log_Pos: 1684

              Relay_Log_File: SDSC-WIN7-ZHANGLU-relay-bin.000002

               Relay_Log_Pos: 1595

       Relay_Master_Log_File: mysql-bin.000011

            Slave_IO_Running: Yes

           Slave_SQL_Running: Yes

             Replicate_Do_DB: test

   ......

 Slave_IO_Running: Yes Slave_SQL_Running: Yes都是Yes 就对了。

 可能出现问题是要多次stop slave后多次执行change master to命令。

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章