2个回答
展开全部
估计是你没有给本地或者远程管理员登录授权导致无法连接,请按下面的流程更改授权远程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的日志一般都有记录的。
#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的日志一般都有记录的。
展开全部
看起来是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
解决方案:
如果你已经有了 /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
追问
谢谢,问题已经解决,原来把localhost改成本地IP就可以了
追答
这句代码还是要加上呢,你就可以直接用localhost了。
vi /etc/hosts
127.0.0.1 localhost
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询