问题
- win10
- 本机装了MySQL,版本5.7,使用正常
- 然后装了PHPStudy,结果发现MySQL账号登不上了!错误码:1045(28000)
摸索
- 搜错误码,要么远程机器没权限,要么用户名密码错误,排除前者
- 确认没人改过密码
- 怀疑端口占用,于是CMD,
netstat -ano
,出来一大排
顺便贴一下netstat各参数意义:
- 也可以
netstat -ano | findstr "3306"
,总之找到进程ID是8484 tasklist | findstr "8484"
,似乎没啥毛病- 这个时候,差点想在
my.ini
(Linux上的话是etc/my.cnf
)文件里,mysqld
下面的加上skip-grant-tables
,暴力改密码 - 但突然想起PHPStudy MySQL初始账号密码都是root,一试果然登上了,再看版本,MySQL 5.5.3,emmm
解决
- 打开服务,禁用MySQLa,启动MySQL57,搞定(并没有)
- 好景不长,一旦PHPStudy重启服务,发现端口被占用,立马又会把MySQL57给kill掉
- 只好把原来MySQL57的数据都拷到PHPStudy的MySQL,然后禁掉了57
疑问
- 同一台机器上多个MySQL,如果配置不同的端口号,都能启动服务,那他们之间到底有没有共用的数据?会不会发生别的冲突?
- 似乎可以在一台机器上布俩MySQL作为主从库,具体咋操作?这么做的意义是啥?
- PHPStudy为何这么霸道!用哪个MySQL服务,就不能给人选择一下吗!过分