Linux 下的phpstudy环境,mysql测试链接不成功

求大神解答,这是什么原因,mysql服务已经启动了
2024-11-28 03:37:06
推荐回答(2个)
回答(1):

估计是你没有给本地或者远程管理员登录授权导致无法连接,请按下面的流程更改授权远程mysql访问
#ps aux|grep mysqld //先查看一下mysql 是否已经启动
#netstat -ant | grep 3306 //查看一下端口是否已经起来

如果已经启动那么,请使用本地登录(不是远程或者交互登录哦)

# mysqld-nt --skip-grant-tables 或者 sudo /usr/sbin/mysqld --skip-grant-tables //ubuntu
#/usr/sbin/mysqld --skip-grant-tables //redhat 或者centos 直接管理员进入
懂mysql语句的看下面,

mysql> use mysql
mysql> select user,host,password from user where user='root'; 、、
mysql> update user set host='localhost' where user='root' and host='%';
mysql>SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');
mysql> flush privileges;
举例:GRANT ALL PRIVILEGES ON phpstudy.* TO 'root'@'192.168.1.3' IDENTIFIED BY '123456' WITH GRANT OPTION; 说明:授权root 远程ip 192.168.1.3 登录操作 phpstudy.* 所有的操作权限。 %:通配符代表所有的ip地址。

#service mysqld restart 或者重启linux也可以,之后你连接一下是否可以连上,如果连上mysql的日志一般都有记录的。

回答(2):

看起来是php的问题,实际上确实环境没有配置好。
解决方案:
如果你已经有了 /tmp/mysql.sock 但是没有 /var/mysql/mysql.sock 你应该:
cd /var
mkdir mysql
cd mysql
ln -s /tmp/mysql.sock mysql.sock
如果你有了 /var/mysql/mysql.sock 但是没有 mysql.sock name:
cd /tmp
ln -s /var/mysql/mysql.sock mysql.sock