mysql设置远程连接及问题解决

一.设置远程连接

1.查看用户
mysql -u root -p

mysql> use mysql;
Database changed
mysql> select host,user from user;
+--------------+------+-------------------------------------------+
| host         | user          |
+--------------+------+-------------------------------------------+
| localhost    | root          |
| localhost | debian-sys-maint |
| localhost | mysql.session    |
| localhost | mysql.sys        |
+--------------+------+-------------------------------------------+
2 rows in set (0.00 sec)
2.设置允许root用户在任何地方进行远程登录,并具有所有库任何操作权限,具体操作如下:
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '这里是你的密码' WITH GRANT OPTION;
FLUSH PRIVILEGES;

查看一下:

mysql> select host,user from user;
+-----------+------------------+
| host      | user             |
+-----------+------------------+
| %         | root             |
| localhost | debian-sys-maint |
| localhost | mysql.session    |
| localhost | mysql.sys        |
+-----------+------------------+
5 rows in set (0.00 sec)

这里就成功了,你可以在任何机器访问,但是可能会有一些错误,下面我将遇到的错误列出来。

二.常见错误

首先如果出现上面的结果就代表配置没问题了,你可以在任何机器访问,但是可能会有一些错误,下面我将遇到的错误列出来。

1.网络问题

ping 一下如果不可以就是网络问题。

2.端口被防火墙挡住。

解决方法有两个:
(1)关闭防火墙:

ufw disable

(2)允许3306端口通过防火墙

vi /etc/sysconfig/iptables
-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT
/etc/init.d/iptables restart(重启防火墙使配置生效)
3.检查MySQL配置
netstat -apn|grep 3306
tcp6  0  0 127.0.0.1:3306  :::*  LISTEN    13524/mysqld

这说明3306端口被绑定到了本地,修改/etc/mysql/mysql.conf.d/mysqld.cnf
将bind-address=127.0.0.1 修改为bind-address=0.0.0.0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值