Ubuntu远程连接MySQL(connection refused)解决方法

一、判断ubuntu是否开启防火墙

sudo ufw status

开放防火墙3306端口

sudo ufw allow 3306

二、查看3306端口是否打开

 
注意:红色框框表示3306绑定的ip地址–>未修改前为:127.0.0.1:3306–>即mysql默认绑定localhost,远程访问不了 
*如果是绑定了127.0.0.1则继续看第三步,否则请跳过第三步

三、修改mysql配置文件,将bind-address = 127.0.0.1注释,开放所有连接

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

重启ubuntu,再次查看3306端口状态,同第二步

四、通过telnet尝试连接mysql

telnet your-remote-ip-address 3306

如果不能连通,继续下一步

五、将root用户授权给所有连接 
step1:进入mysql 
step2: 
法一>改表法:进入mysql数据库,查看里面user表,搜索User=’root’的记录 
 
注:此处为修改后的记录 
修改Host=’localhost’的记录:

mysql> UPDATE user SET Host = ‘%’ WHERE User = ‘root’ AND Host=’localhost’;

使修改生效:

mysql> FLUSH PRIVILEGES;

法二>授权法: 
例子:允许root用户使用密码password从任何主机连接到mysql:

mysql> GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘password‘ WITH GRANT OPTION;

使修改生效:

mysql> FLUSH PRIVILEGES;

最后,可再通过第四步进行测试验证能否远程连接上mysql~

时间: 2024-10-10 07:26:45

Ubuntu远程连接MySQL(connection refused)解决方法的相关文章

解决远程连接mysql很慢的方法(网络正常)

最近用mysql命令行或者JDBC远程连接mysql速度很慢,而且远大于ping时间.上网搜了一下,解决方案如下: 在/etc/mysql/my.cnf文件的[mysqld]部分加入:skip-name-resolve,保存文件,重启mysql,搞定. 但这样做的代价是不能在MySQL的授权表中使用主机名了而只能用ip. 参考: http://www.jb51.net/article/27616.htm http://blog.163.com/[email protected]/blog/sta

MYSQL远程连接速度慢的解决方法

在局域网内连接其他机器的MYSQL,发现速度慢的很,不知道什么原因,总有几秒的延迟. 后来在网上发现解决方法,my.ini里面添加 [mysqld]skip-name-resolveskip-grant-tables 这样速度就快了! skip-name-resolve 选项就能禁用DNS解析,连接速度会快很多.不过,这样的话就不能在MySQL的授权表中使用主机名了而只能用ip格式. 若使用–skip-grant-tables系统将对任何用户的访问不做任何访问控制,但可以用 mysqladmin

解决远程连接mysql很慢的方法(mysql_connect 打开连接慢)

在进行 ping和route后发现网络通信都是正常的,而且在mysql机器上进行本地连接发现是很快的,所以网络问题基本上被排除了.以前也遇到过一次这样的问题,可后来就不知怎么突然好了,这次又遭遇这样的问题,所以想看看是不是mysql的配置问题.在查询mysql相关文档和网络搜索后,发现了一个配置似乎可以解决这样的问题,就是在mysql的配置文件中增加如下配置参数: [mysqld] skip-name-resolve 在linux下配置文件是/etc/my.cnf,在windows下配置文件是m

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

开发某应用系统连接公司的测试服务器的mysql数据库连接打开的很慢,但是连接本地的mysql数据库很快,刚开始认为可能是网络连接问题导致的,在进行 ping和route后发现网络通信都是正常的,而且在mysql机器上进行本地连接发现是很快的,所以网络问题基本上被排除了,所以想看看是不是mysql的配置问题.在查询mysql相关文档和网络搜索后,发现了一个配置似乎可以解决这样的问题,就是在mysql的配置文件中增加如下配置参数: [mysqld]skip-name-resolve 在linux下配

解决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是用户名,%是指所有访

服务器重启后 django无法连接mysql数据库的解决方法

问题描述: 远程linux服务器,centOS7系统 采用uwsgi+django+pymysql的方式连接mysql数据库. 在服务器重启之后, 启用uwsgi之后(直接运行django运行命令也是一样python manage.py runserver), 无法连接到数据库. 报错: cryptography is required for sha256_password or caching_sha2_password 解决方法: 1. 手动连接数据库一次 mysql -u root -p

mysql1130远程连接没有权限的解决方法

远程连接没有权限的原因有两种,一个是因为mysql的限制,一个是防火墙的限制. 1,解决防火墙限制: 在mysql服务主机上将防火墙关闭或者在防火墙高级设置里面加入出入站规则,加上mysql的端口,允许通过mysql的端口进行访问主机. 2,解决mysql的限制,在mysql服务主机上执行下列sql [sql] view plaincopy -- 更改root用户的登录主机为任意主机 UPDATE USER SET Host = '%' WHERE User = 'root'; -- 更改权限(

WIN7或2008远程连接特别慢的解决方法 【转】

方法一. 原因在于从vista开始,微软在TCP/IP协议栈里新加了一个叫做“Window Auto-Tuning”的功能.这个功能本身的目的是为了让操作系统根据网络的实时性能,(比如响应时间)来动态调整网络上传输的数据窗口的大小,从而达到实时优化网络性能的目的.通过把autotuninglevel设置成disabled,就可以让数据窗口保持默认值. 设置命令如下: netsh interface tcp set global autotuninglevel=disabled (或者highly

Ubuntu下忘记MySQL root密码解决方法

1.忘了mysql密码,从网上找到的解决方案记录在这里. 编辑mysql的配置文件/etc/mysql/my.cnf,在[mysqld]段下加入一行“skip-grant-tables”. 2.重启服务器:sudo service mysql restart 他会出现这种情况: mysql stop/waiting  mysql start/running, process 18669 3.用空密码进入mysql管理命令行,切换到mysql库.输入:mysql 4.然后输入: mysql> us