Advertisement

远程连接云服务器的MySQL数据库

阅读量:

目录

1.查询权限

2.更新权限

2.1执行该SQL语句:

2.2刷新权限

3.开放MySQL的端口(此方法仅适用于云服务器)

3.1打开服务器后台管理:

3.2查看防火墙是否开放了MySQL的3306端口:

3.3没有开放的话(一般默认都没有开放3306端口),添加防火墙规则:

4.(自选)ping端口测试是否通常连接

4.1. tcping 非自带命令,首先安装tcping命令

4.2. 将下载的文件放在C:\WINDOWS\system32 目录(其实就是与cmd.exe同级)下

4.3.Ping端口是否通畅

4.3.1打开命令窗口

4.3.2命令:

5.SQLyog远程连接MySQL数据库

6.常见错误

6.1这个是没有开放数据库的端口照成的错误


1.查询权限

启动远程云服务器上的运行此SQL语句以获取Host List并验证该主机是否被Allowed to Connect到MySQL Database

SQL语句:

复制代码
 #使用mysql数据库

    
 USE mysql;
    
 #查询user表中User和host的内容
    
 SELECT user.`User`,user.host FROM `user`;

查询结果:

2.更新权限

为了远程连接到root账户,请确保该用户的主机地址已设置为localhost。(且仅限于本地机器进行登录)。

需要更改root账户对应host的值

2.1执行该SQL语句:

复制代码
 #更新user表中的host为%,更新条件,用户名为user,host为localhost

    
 UPDATE `mysql`.`user` SET `host` = '%' WHERE `User` = 'root' AND `host` = 'localhost';

host对应参数

localhost 本机访问
% 允许所有IP访问
主机的IP地址 允许对应IP的主机访问

2.2刷新权限

不刷新权限的话就算改了也无效

执行SQL语句:

复制代码
    flush privileges;

3.开放MySQL的端口(此方法仅适用于云服务器)

执行SQL语句查询MySQL端口号

复制代码
    SHOW VARIABLES LIKE 'port';

结果:

端口号为:3306

我这里采用的云服务器属于腾讯云系列的服务之一,并非唯一的选择;其他类型的云服务器的方法也大体上类似,并且同样的道理

3.1打开服务器后台管理:

3.2查看防火墙是否开放了MySQL的3306端口:

3.3没有开放的话(一般默认都没有开放3306端口),添加防火墙规则:

应用类型根据需要选择,我这里选择的MySQL(3306),

可以选择限制限制来源:

不启用的话,IP限制为:0.0.0.0/0

启用的话,输入允许访问的主机IP即可

点击确定,等待添加完成,查看列表中是否存在:

4.(自选)ping端口测试是否通常连接

4.1. tcping 非自带命令,首先安装tcping命令

可以去官网:http://www.elifulkerson.com/projects/tcping.php下载

4.2. 将下载的文件放在C:\WINDOWS\system32 目录(其实就是与cmd.exe同级)下

位于C:\WINDOWS\system32文件夹中就可以直接运行(其核心原理在于,在与该程序同一目录位置处启动CMD命令即可执行TCPING指令,并且无论是在桌面上还是在系统资源管理器中都能操作)。

4.3.Ping端口是否通畅

4.3.1打开命令窗口

Win+R > cmd

ping端口的命令和ping网络IP的有些不同

4.3.2命令:

IP和端口中间空格隔开

复制代码
    tcping IP 端口号

结果:

连接通畅,就可以使用SQLyog远程连接了

5.SQLyog远程连接MySQL数据库

请设置云服务器的外网IP;然后配置MySQL数据库账号,并输入账号名、密码以及开放的端口号;最后确保能够成功建立连接

这样就连接成功了!

6.常见错误

2003错误,Can't connect to MySQL server on 'IP' (0);

6.1这个是没有开放数据库的端口照成的错误

全部评论 (0)

还没有任何评论哟~