Navicat 远程连接 MySQL

Navicat 远程连接 MySQL

相信大家都有在远程服务器上进行开发吧,其中 MySQL 的使用率应该也会挺高,如果使用 Navicat 等可视化工具来操作远程数据库不失为一种很好的选择,避免了在命令行写 SQL 语句的操作。下面简单介绍一下 Navicat 连接远程数据库的操作。

1

首先我们需要更改 3306端口,查看3306 端口是否对外开放,MySQL 默认情况下是不开放对外访问功能的。语句如下:

netstat -an | grep 3306

如果查询结果如下,需要我们更改 MySQL 配置文件。

可以看出,mysql的3306端口只是监听本地的连接,这样就阻碍了外部IP对该数据库的访问,修改 MySQL 配置文件 my.conf :

vim /etc/mysql/my.cnf

找到

# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address  = 127.0.0.1 

bind-address = 127.0.0.1 这行注释掉或者改为你想要使用的客户端主机 ip。

至此 MySQL 远程访问端口就成功开启了。

2

我们进入 MySQL 命令界面,运行下列SQL 语句,查看用户是否具有访问权限:

use mysql;
select user, host from user;

返回结果如下:

我们使用通配符 % 来修改 root 用户对应的 host 字段,使具有访问所有 ip 地址的权限:

update user set host = ‘%‘ where user = ‘root‘;

如果抛出如下异常:

Duplicate entry ‘%-root‘ for key ‘PRIMARY‘

说明有多个ROOT用户纪录在USER表中了,我们重新执行:

select host from user where user = ‘root‘;

便能看到字段 host 的 % 值。

我们执行:

flush privileges;

刷新一下 MySQL 的系统权限相关表。

最后重启一下 MySQL 服务:

sudo restart mysql

3

服务端设置好了,我们在 Navicat 客户端设置一下连接:

打开 Navicat,点击左上方的 "连接",设置一下数据库的用户名,地址,密码等,便能在 Navicat 中远程操作服务器上的 MySQL 啦。

原文地址:https://www.cnblogs.com/weixuqin/p/9530605.html

时间: 2024-10-09 11:11:46

Navicat 远程连接 MySQL的相关文章

Navicat远程连接MySQL

在使用Navicat远程连接MySQL创建表的时候,爆出错误1044 百度未果 解决办法: 在Navicat登录的时候,采用SSH方式登录

navicat远程连接mysql,2003 can't connect to mysql server on 10038

navicat远程连接mysql,2003 can't connect to mysql server on 10038 参照URL:https://blog.csdn.net/makeworks/article/details/77844386 ①:netstat -an | grep 3306 来查看mysql默认的端口3306是否开启,允许哪个ip使用,如果你发现,前面有127.0.0.1,就说明,3306端口只能本机ip使用 所以,我们需要 ②:打开mysql配置文件 sudo vi /

关于navicat远程连接mysql问题

如果你想连接你的mysql的时候发生这个错误: ERROR 1130: Host '192.168.1.81' is not allowed to connect to this MySQL server 解决方法: 1. 改表法.可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"local

通过Navicat远程连接MySQL

参考: http://blog.csdn.net/apple9005/article/details/53033148 问题一:在主机下通过Navicat连接服务器MySql的时候,提示"2003 Can't connect to mysql server on 'xxx.xxx.xxx.xxx'(10038)" 原因:服务器3306远程端口没有开放 解决: 1.首先查看端口是否打开,命令:netstat  -an|grep 3306 会显示127.0.0.1:3306,表示的是本地

解决Navicat远程连接mysql很慢的方法

ubuntu 下 /etc/mysql/mysql.conf.d [mysqld]skip-name-resolve  增加该字段即可 如果增加该字段,这无法使用本地ip进行登入, 登陆到MySql服务器,执行下面的语句为所有ip赋予权限. grant all privileges on *.* to 'root'@'%' identified by 'xxx'; 其中.的意思是 所有库.所有表, ‘root’@’%’ identified by ‘xxx’的前一个root是用户名,%是指所有访

Navicat for mysql 远程连接 mySql数据库10061、1045错误问题 (转)

远程使用Navicat for mysql 客户端软件连接 mySql数据时,连接出现 2003-Can’t connect to MySQL on ’192.168.1.2’(10061)错误时,是由于MySQL不准许远程连接. 修改方法如下: 1:在服务端MySQL文件夹下找到my.ini文件.修改bind-address=127.0.0.1 为 bind-address=0.0.0.0 (在MySQL 5的my.ini中未发现此项) 2:重新启动MySQL服务. 测试连接情况: 如果没有给

navicat远程连接阿里云ECS上的MYSQL报Lost connection to MySQL server at 'reading initial communication packet'

问题现象 MySQL 远程连接报错:Lost connection to MySQL server at 'reading initial communication packet' 解决方案 1.检查是否有防火墙限制2.检查 MySQL 是否有访问权限 use mysql; Grant all privileges on *.* to 'root'@'%' identified by '密码' with grant option; flush privileges; 3.检查 my.ini 文

Navicat for mysql 远程连接 mySql数据库10061、1045错误

用navicat连接远程的mysql数据报错: 有朋友可能会碰到使用Navicat for mysql 远程连接 mySql数据库会提示10061.1045错误或 2003-Can't connect to MySQL on '192.168.1.2'(10061),这个原因是因为MySQL不准许远程连接. 最简单的办法是 MySQL远程配置 代码如下 复制代码 GRANT ALL PRIVILEGES ON *.* TO [email protected]'%' IDENTIFIED BY '

使用Navicat远程连接阿里云ECS服务器上的MySQL数据库

1.必须给服务器的安全组规则设置端口放行规则,在管理控制台中设置: 2.之后填写配置,授权对象是授权的IP,其中0.0.0.0/0为所有IP授权,之后保存; 3.Navicat使用的配置 在编辑连接处,要配置SSH和常规两项 在常规项填写配置,主机名填写:localhost,配置完成后,就使用Navicat远程连接阿里云ECS服务器上的MySQL数据库: 测试连接,完美成功. 原文地址:https://www.cnblogs.com/GreenForestQuan/p/11776130.html