1. 在服务器端开启远程访问

    首先进入mysql数据库

    1
    2
    mysql -uroot -p
    Enter password: #输入密码

    然后输入下面两个命令:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    mysql> grant all privileges on *.* to 'root'@'%' identified by 'password';
    Query OK, 0 rows affected, 1 warning (0.00 sec)

    # 如果该命令报错“ERROR 1819 (HY000): Your password does not satisfy the current policy requirements”,就先执行以下两个命令后再执行上面的命令
    mysql> set global validate_password_policy=0;
    Query OK, 0 rows affected (0.00 sec)

    mysql> set global validate_password_length=1;
    Query OK, 0 rows affected (0.01 sec)
    1
    mysql> flush privileges;
    • 第一个*是数据库,可以改成允许访问的数据库名称

    • 第二个 是数据库的表名称,代表允许访问任意的表

    • root代表远程登录使用的用户名,可以自定义
    • %代表允许任意ip登录,如果你想指定特定的IP,可以把%替换掉就可以了
    • password代表远程登录时使用的密码,可以自定义
    • flush privileges;这是让权限立即生效
  2. 修改my.cnf配置文件

    这个是mysql的配置文件,如果你无标题文章找不到在哪里的话,可以输入find /* -name my.cnf 找到
    通过vim编辑该文件,找到bind-address = 127.0.0.1这一句(如果没有就不管),然后在前面加个#号注释掉,保存退出

  3. 重启服务

    1
    2
    3
    service mysql restart
    # 或者
    systemctl restart mysqld
  4. 开放3306端口(端口以自己实际情况为准)

    1
    2
    3
    4
    5
    6
    # 查看开发端口情况
    firewall-cmd --list-all
    # 开发3306端口
    firewall-cmd --zone=public --add-port=3306/tcp --permanent
    # 重启防火墙
    systemctl restart firewalld
  5. 在本地远程连接

    在终端输入:

    1
    mysql -h 服务器ip地址 -P 3306 -u root -p

    然后输入密码即可。

    也可以使用连接工具连接,例如Navicat