mysql权限设置
有时候我们搭建了mysql服务,在服务器上可以登录mysql,但是通过远程就无法连接,能ping通,但是telnet 3306端口不通
可以通过以下步骤排查:
1、检查监听端口是否存在
netstat -ntlp |grep mysql
2、mysql配置文件
默认配置文件在/etc/my.cnf
在[mysqld]标签中添加bind-address=addr可以配置绑定ip地址。不配置或者IP配置为0.0.0.0,表示监听所有客户端连接。
如:
[mysqld]
port = 3306
bind-address = 0.0.0.0
socket = /tmp/mysql.sock
datadir = /usr/local/mysql/var
skip-external-locking
3、mysql用户访问权限
进入mysql数据库 $mysql -u root -p >use mysql; >select host,user from user; MySQL建用户的时候会指定一个host,默认是127.0.0.1/localhost只能本机访问; 其它机器用这个用户帐号访问会提示没有权限,host改为%,表示允许所有机器访问。 修改步骤: 1、GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION; 2.FLUSH PRIVILEGES;
4、检查防火墙是否开启
service iptables stop #centos6
systemctl firewalld stop #centos7
作者:凉生墨客
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。