当存在多个项目的时候,需要同时部署时,且只有一台服务器时,哪么就需要部署Mysql多个实例,原理很简单,多个mysql服务运行使用不同的配置及数据管理。
具体操作如下:
1、找到mysql.ini配置并复制为一个新的文件,如mysql_dev.ini
2、修改如下配置
1 2 3 4 5 6 7 8 9 |
[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、初始化数据
1 |
mysqld --initialize-insecure --user=mysql --datadir=D:\phpstudy_pro\Extensions\MySQL5.7.26\data_dev --basedir=D:\phpstudy_pro\Extensions\MySQL5.7.26 |
5、创建服务
1 |
mysqld install MySQL_DEV --defaults-file="D:\phpstudy_pro\Extensions\MySQL5.7.26\my_dev.ini" |
6、修改密码
1 2 3 4 5 6 7 8 9 10 |
#登录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、开启远程登录
1 2 3 4 |
#更新权限 update user set host = '%' where user = 'root'; #退出 quit; |
8、调整mysql_dev.ini配置
删除 skip-grant-tables 配置项。
9、重启msyql服务
1 2 |
sc stop MYSQL_DEV sc start MYSQL_DEV |