版本如下:
windows server 2012 R2
mysql server 5.7.25安装版 / mysql server 5.7.25 解压版
* 这里为啥还要有安装版和解压版勒,主要是因为我这个弄来的一个新的服务器,然后经过了多次的测试发现解压版直接安装就会报错,经过度娘后得到结果是因为一个插件没有安装所导致的,所以为了省去一些麻烦,我的mysql主机采用的就是安装版本,首先将安装版装好以后,就可以继续安装解压版了。本次我的这个安装版已经装好,目前是打算装第三个mysql,所以安装主机的那一部分基本省略了。
安装多台mysql步骤如下:
1、安装第一台安装版的mysql(网上有很多,就不做解释了)
2、安装第二台mysql,采用解压版。
* 首先将解压版的mysql复制到要安装的位置
* 进入到文件夹中将data文件夹内的文件删除,同时配置my.ini配置文件
* my.ini配置内容如下
[mysqld] port = 3308 basedir=C:/Program Files/mysql3/mysql-5.7.25 datadir=C:/Program Files/mysql3/mysql-5.7.25/data max_connections=200 character-set-server=utf8 default-storage-engine=INNODB sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES log-bin=mysql-bin server-id = 3 [mysql] default-character-set=utf8
* 安装mysql服务:
以管理员身份运行cmd控制台(**必须**),然后进入到解压版的mysql安装目录下bin文件夹中。
* 运行mysqld install命令:
这里我输入的是:mysqld install mysql2 是因为如果你使用mysqld install这种方式那么它生成的服务名称就是mysql,但是我之前已经安装过一次了,所以这里就在后面自定义了一个服务名称为 mysql2
从上图我们可以看到下面两个是我之前就已经安装好了的,新安装的这个目前是处于停止状态,接下来就是对于mysql进行初始化,在初始化前我们还需要在bin目录下添加一个my.ini配置文件,不然初始化是会抛出异常,主要内容如下:
* 初始化mysql输入命令:mysqld --initialize --user=mysql --console 执行完这个以后,如果一切正常会在最后一排有一个临时密码。这个我们要将最后的这个临时密码复制下来,用于后面的mysql登录
* 启动mysql服务
这里启动出现了报错,这个时候我们去到注册表中进行修改,
把imagePath中的数据根据自己的安装路径进行修改,下面是我的:
"C:Program Filesmysql3mysql-5.7.25inmysqld.exe" --defaults-file="C:Program Filesmysql3mysql-5.7.25my.ini" mysql2
上面这个需要中间的安装路径进行修改
最后再启动,服务启动成功
*************************************************************分隔线******************************************************************************
以上就是在windows系统中一台电脑安装多台mysql。下面就是进行mysql主从复制的配置。
* 首先配置mysql主机的my.ini配置文件,在最后添加如下:
#id server-id=1 log-bin=mysql-bin log-slave-updates
* 启动主数据库,然后登录数据库
* 然后输入命令如下:show master status;
* 在上述这一步之前我们还需要在主数据库中新建一个角色,用于从机配置时登录使用,我这里就不创建了,在之前就已经创建过了。下面就是配置从机。
* 登录从数据库,使用之前的在mysql安装时生成的临时密码登录
* 修改登录密码,在命令行中输入如下指令:set password = password('123456');
* 配置从机输入指令如下:stop slave;
* 填写主数据库信息如下:
change master to master_host='主机IP地址', master_user='mysql_salve', master_password='123456', master_log_file='mysql-bin.000002', master_log_pos=154;
* 执行命令如下:start slave;
* 这时我们可以通过命令:show slave statusG; 来查看是否同步数据
* 最后我们来做一个验证,看是否实现同步。我们在主机中添加一条数据,然后在从机中查看
* 结束语:通过以上的这些步骤,最终完成了一台电脑安装多台mysql,同时实现mysql主从复制,后续将持续更新使用amoeba做mysql的读写分离。