环境: 一台windows机器,上面装好了一个mysql,安装目录假设是(C:\Program Files\MySQL\MySQL Server 5.7)
想法:运行两个mysql server实例,一个用3306端口,另外一个用3308端口,用来做集群,做分片测试等等。
步骤:
1、3306是默认的,所以你能在任务管理器-服务中看到mysql的服务,启动它既可。
2、接着我们来启动3308的那个实例,怎么启动呢?
首先,我们在D盘新建一个目录(D:\Program Files\slave)用于存放新的配置文件,
接着将(C:\ProgramData\MySQL\MySQL Server 5.7\my.ini)文件拷贝到slave目录下,
由于(C:\ProgramData)是默认隐藏的文件夹,所以你可能要google“如何显示隐藏文件夹”来帮助你找到这个文件。
3、新建(D:\Program Files\slave\Data)目录,用于存放3308实例的数据
4、打开(D:\Program Files\slave\my.ini)文件,修改以下内容:
(1) [mysqld] 下方的 port = 3308 ,
(2)datadir = D:/Program Files/slave\Data,
(3) server-id = 2 ,
(4) secure-file-priv 前面加# ,即注释掉。
好了,修改完毕。保存。
5、打开cmd,
如果你之前设置了mysql bin目录的path,(没有请添加path)
则直接运行 mysqld --defaults-file="D:\Program Files\slave\my.ini" --skip-grant-tables 既可启动,
(其中 --skip-grant-tables 的作用是跳过权限检查,即不用输入密码)
6、打开另一个cmd,
运行mysql -u root -p -P 3308 ,提示输入password,直接回车既可,这样就成功登陆了。
如果你想关闭这个mysql server,运行shutdown命令既可。
7、如果你想已服务的形式启动3308的mysql,
就在第5步时运行mysqld --install MySQL3308 --defaults-file="D:\Program Files\slave\my.ini"既可,
然后使用命令 net start MySQL3308 既可启动服务。
8、如果你成功运行了上面的步骤,你会发现进去3308的实例后,没有任何数据,都要重新建,
这个时候其实你可以把(C:\ProgramData\MySQL\MySQL Server 5.7\Data)目录中的内容拷贝到(D:\Program Files\slave\Data),
这样3308实例上的数据就和3306上面的一样了。就是这么简单。
----- pumpkin_hua 2015/11/25