如何在一台服务器上安装两个mysql或者更多

如何在一台服务器上安装两个mysql或者更多,第1张

这种架构一般用在以下三类场景

1. 备份多台 Server 的数据到一台如果按照数据切分方向来讲,那就是垂直切分。比如图 2,业务 A、B、C、D 是之前拆分好的业务,现在需要把这些拆分好的业务汇总起来备份,那这种需求也很适用于多源复制架构。实现方法我大概描述下:业务 A、B、C、D 分别位于 4 台 Server,每台 Server 分别有一个数据库来隔离前端的业务数据,那这样,在从库就能把四台业务的数据全部汇总起来,而不需要做额外的 *** 作。那没有多源复制之前,要实现这类需求,只能在汇总机器上搭建多个 MySQL 实例,那这样势必会涉及到跨库关联的问题,不但性能急剧下降,管理多个实例也没有单台来的容易。

2. 用来聚合前端多个 Server 的分片数据。

同样,按照数据切分方向来讲,属于水平切分。比如图 3,按照年份拆分好的数据,要做一个汇总数据展现,那这种架构也非常合适。实现方法稍微复杂些:比如所有 Server 共享同一数据库和表,一般为了开发极端透明,前端配置有分库分表的中间件,比如爱可生的 DBLE。

3. 汇总并合并多个 Server 的数据

第三类和第一种场景类似。不一样的是不仅仅是数据需要汇总到目标端,还得合并这些数据,这就比第一种来的相对复杂些。比如图 4,那这样的需求,是不是也适合多源复制呢?答案是 YES。那具体怎么做呢?

1.1 环境搭建

准备两台Windows NT 主机,分别安装好iKEY Server windows 版本,确定版本无误,确保mysql服务正常启动,确保两台主机处于同一个局域网中,确定好哪台做为主、备机器,假设A为主机,B为备机,假设A主机IP地址为:192.168.1.101,B主机IP地址为192.168.1.102

1.2 创建同步帐户

分别在A、B节点上登陆mysql 数据库,创建同步帐户并赋予同步权限,如下:

A节点 *** 作:

运行cmd, cd进入iKEY版本安装目录下的iKEY\mysql\bin下,然后执行mysql –uroot –p123456 登陆mysql数据库执行:

mysql>GRANT REPLICATION SLAVE ON *.* TO "yw[j1] "@"192.168.1.10[j2] 2" IDENTIFIED BY 'ym[j3] '

mysql>flush privileges

B节点 *** 作步骤如上,权限赋予如下:

mysql>GRANT REPLICATION SLAVE ON *.* TO "yw[j4] "@"192.168.1.10[j5] 1" IDENTIFIED BY 'ym[j6] '

mysql>flush privileges

执行以上 *** 作后,运行net stop mysql, 分别停止两节点数据库.

1.3 配置数据同步选项

1.3.1A主机 *** 作

安装好的iKEY Server windows 版本后,会在安装目录下的iKEY\mysql\backup文件夹下生成一个my_master.cnf配置文件,在A主机上将my_master.cnf 文件复制到安装目录下的iKEY\mysql\bin文件夹下,并重命名为my.cnf,重命名之前请先备份原有my.cnf文件,以下介绍my.cnf做的修改之处:

log-bin=mysql-bin #同步事件的日志记录文件

binlog-do-db=ikey_db #提供数据同步服务的数据库日志

binlog-do-db=ikey_log #提供数据同步服务的数据库日志

server-id=1

master-host=192.168.1.102 #主机B的IP地址

master-user=ym #同步帐户

master-password=ym #同步帐户密码

master-port=3306 #端口,主机的MYSQL端口

master-connect-retry=60 #重试间隔60秒

replicate-do-db=ikey_db #同步的数据库

replicate-do-db=ikey_log #同步的数据库

1.3.2B主机 *** 作

安装好的iKEY Server windows 版本后,会在安装目录下的iKEY\mysql\backup文件夹下生成一个my_slave.cnf配置文件,在B备机上将my_slave.cnf 文件复制到安装目录下的iKEY\mysql\bin文件夹下,并重命名为my.cnf,重命名之前请先备份原有my.cnf文件,修改之处同A主机,不同配置在于以下:

server-id=2

master-host=192.168.1.101 #主机A的地址

以上需要注意的地方是,要定义master-host的主机IP地址,请根据实际情况进行修改。

请确保以上同步用户、主机IP、和同步帐户密码与所设配置相同.

1.3.3验证数据同步

当以上配置完毕后,分别重新启动主机A和备机B数据库,运行net start mysql,

查看同步配置情况,登陆mysql 数据库。

在A节点上查看Master 信息:

mysql>show master status

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

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

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

| mysql-bin.000001 | 98 | ikey_db,ikey_log | |

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

1 row in set (0.00 sec)

在B节点上查看Slave信息:

mysql>show slave status\G

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

Slave_IO_State: Waiting for master to send event

Master_Host: 192.168.1.101

Master_User: ym

Master_Port: 3306

Connect_Retry: 60

Master_Log_File: mysql-bin.000001

Read_Master_Log_Pos: 98

Relay_Log_File: testBBB-relay-bin.000002

Relay_Log_Pos: 235

Relay_Master_Log_File: mysql-bin.000001

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

Replicate_Do_DB: ikey_db,ikey_log

通过在B节点上查看同步状态,我们可以清楚的看到所设置的同步配置信息以及当前同步状态。

同样可以在B节点上查看master 信息以及在A节点上查看slave 信息。

添加数据在A主机上,同时测试B备机上数据是否同步,以及反向测试。

1.4 同步维护

当需要更改节点IP 时,Mysql 同步配置也需要进行相应修改,在更改节点IP之前,我们先做如下 *** 作:

分别在A、B节点上执行mysql>stop slave停止当前同步状态。

假如此时A 节点IP 改为192.168.1.103,需要做如下 *** 作:

1.4.1 A节点:

mysql>show master status

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

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

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

| mysql-bin.000002 | 118 | ikey_db,ikey_log | |

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

1 row in set (0.00 sec)

1.4.2 B节点:

更改B--àA方向同步的帐户权限

mysql>show grants for ym@192.168.1.101(原A节点IP);

查看到原赋予从192.168.1.101 连接的权限,此时我们删除此同步帐户,并重新赋予192.168.1.103 连接的权限,如下:

mysql>drop user ym@192.168.1.101

mysql>flush privileges

mysql>grant replication slave on *.* to ym@192.168.1.103 identified by 'ym'

mysql>flush privileges

然后修改A-àB方向同步配置项:

mysql>CHANGE MASTER TO

->MASTER_HOST='192.168.1.103', # Master服务器地址

->MASTER_USER='ym',

->MASTER_PASSWORD='ym',->->MASTER_LOG_FILE='mysql-bin.000002', # 刚才我们记录A节点数据库要执行复制的日志文件。

->MASTER_LOG_POS=118 #刚才记录的A节点数据库要复制的日志文件位置。

Query OK, 0 rows affected (0.02 sec)

同时需要查看此时B节点的Master信息,同步LOG日志及POS位置

mysql>show master status

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

| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |

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

| mysql-bin.000003 | 98 | ikey_db,ikey_log | |

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

1 row in set (0.00 sec)

同时请修改B节点mysql主配置文件中

master-host=192.168.1.103 #主机A的IP地址

1.4.3 接着A节点:

修改B-àA方向同步配置项:

mysql>CHANGE MASTER TO

->MASTER_LOG_FILE='mysql-bin.000003', # 刚才我们记录B节点数据库要执行复制的日志文件。

->MASTER_LOG_POS=98 #刚才记录的B节点数据库要复制的日志文件位置。

Query OK, 0 rows affected (0.02 sec)

然后针对A、B节点启动同步状态,分别运行start slave然后查看同步状态,确保在每台机器上查看show slave status得出

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

即处于正常同步状态。

以上是针对单节点IP修改所做的 *** 作,如果A、B节点IP 都需要修改,参考以上配置进行 *** 作,最好先针对单个节点IP 进行修改,并确保单向同步没有问题后,再进行第二个节点IP修改以及配置。

mysql安装教程具体步骤如下:

工具:联想笔记本电脑。

1、打开下载的安装文件,出现如下界面。

2、mysql安装向导启动,点击“next”继续。

3、选择安装类型,有“Typical(默认)”、“Complete(完全)”、“Custom(用户自定义)”三个选项,我们选择“Custom”,有更多的选项,也方便熟悉安装过程。

4、在“MySQLServer(MySQL服务器)”上左键单击,选择“Thisfeature,andallsubfeatures,willbeinstalledonlocalharddrive.”,即“此部分,及下属子部分内容。

5、正在安装中,请稍候,直到出现下面的界面。

6、点击“next”继续,出现如下界面。

7、现在软件安装完成了,出现上面的界面,这里有一个很好的功能,mysql配置向导,不用向以前一样。

8、自己手动乱七八糟的配置my.ini了,将“ConfiguretheMysqlServernow”前面的勾打上,点“Finish”结束。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/8341845.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-15
下一篇2023-04-15

发表评论

登录后才能评论

评论列表(0条)

    保存