当存在多个项目的时候,需要同时部署时,且只有一台服务器时,哪么就需要部署Mysql多个实例,原理很简单,多个mysql服务运行使用不同的配置及数据管理。
具体操作如下:
1、找到mysql.ini配置并复制为一个新的文件,如mysql_dev.ini
2、修改如下配置
[mysqld] port=3308 basedir=D:/phpstudy_pro/Extensions/MySQL5.7.26/ datadir=D:/phpstudy_pro/Extensions/MySQL5.7.26/data_dev/ log-error="D:/phpstudy_pro/Extensions/MySQL5.7.26/data_dev/err.log #此行代码的功能:不受限制访问mysql,讲人话就是不需要输入密码,就可以登录mysql skip-grant-tables [client] port=3308
3、创建数据存储的目录
#进入D:\\phpstudy_pro\\Extensions\\MySQL5.7.26目录,创建 data_dev文件夹
注:确保data_dev目录下没有任何文件
4、初始化数据
mysqld --initialize-insecure --user=mysql --datadir=D:\\phpstudy_pro\\Extensions\\MySQL5.7.26\\data_dev --basedir=D:\\phpstudy_pro\\Extensions\\MySQL5.7.26
5、创建服务
mysqld install MySQL_DEV --defaults-file="D:\\phpstudy_pro\\Extensions\\MySQL5.7.26\\my_dev.ini"
6、修改密码
#登录mysql mysql -u root -P 3308 #进入mysql库 use mysql; #修改密码(老版本)(这条命令不行就使用新版的命令) update user set password=password("123456") where user="root"; #修改密码(新版本) update user set authentication_string=password("123456") where user="root"; #刷新 flush privileges;
7、开启远程登录
#更新权限 update user set host = '%' where user = 'root'; #退出 quit;
8、调整mysql_dev.ini配置
删除 skip-grant-tables 配置项。
9、重启msyql服务
sc stop MYSQL_DEV sc start MYSQL_DEV