Ubuntu下开启mysql远程访问

时间:2022-02-22 03:41:36

1. 开启数据库3306端口

首先,使用如下指令查看3306端口是否对外开放。

    netstat -an | grep 3306
    tcp    0   0 127.0.0.1:3306      0.0.0.0:*         LISTEN

如果显示如上,说明mysql端口目前只监听本地连接127.0.0.1。然后需要修改mysql的配置文件

    cd /etc/mysql/mysql.conf.d
    sudo vim mysqld.cnf

Ubuntu下开启mysql远程访问
将其中bind-address = 127.0.0.1注释掉。

2. 授权远程访问

首先,进入数据库 mysql -u username -p password,username为你的mysql用户名,password为你的mysql密码。
然后,执行如下sql语句

    mysql> grant all on *.* to username@'%' identified by 'password';  #username为你的mysql用户名,password为你的mysql密码。

3. 重启mysql服务

    /etc/init.d/mysql restart

4. 在防火墙中开启3306端口

如果执行了前三个步骤仍然不能远程访问mysql,那么有可能是防火墙阻止访问,需要开启允许访问。

    sudo ufw allow 3306