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
posted @ 2019-08-20 10:24  凉生墨客  阅读(3763)  评论(0编辑  收藏  举报