原标题:远程连接 Mysql 失败的解决方法

今天在虚拟机Ubuntu上折腾了一晚上mysql,然后试着用java连接,搞了很久都没成功,但是同学配好的Debian上却连接成功了,也就是说我的配置有问题。

折腾了很久,最后还是通过理解异常信息来大致猜测。

远程连接是输入mysql所在主机的IP和端口来确定主机的逻辑地址,再通过用户和密码来确定登录哪个用户。比如:

String url = "jdbc:mysql://192.168.183.134:3306/mysql";

就是先在网络层连上IP为192.168.183.134的主机,再去连接这台主机的具体端口3306(传输层),然后传输层达成连接后,在应用层用账号密码登陆,访问mysql数据库:

Connection conn = DriverManager.getConnection(url, user, password);

一开始我怀疑是否端口设置问题,然后在/etc/mysql/my.cnf上加上了port=3306,结果还是连不上,显示端口拒绝访问。

然后用命令$netstat -apn 找到端口3306的一条信息:

tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN

仔细一看,这里提供的IP是127.0.0.1,结合socket编程的经验,一般要接收任意主机发送的消息时,IP会设置为0.0.0.0,而127.0.0.1(回送地址)是否意味着只能本地访问?然后打开同学的Debian查看他的mysql占用端口时,果然如我所想:

tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN

经过一番搜索后,得出结论是mysql默认只提供给本地访问,而要开启远程访问功能需要额外设置。从安全的角度看这也是合理的。

设置方法还是修改配置文件/etc/mysql/my.cnf

[client]default-character-set=utf8[mysqld]default-storage-engine=INNODBcharacter-set-server=utf8collation-server=utf8_general_ciport=3306bind-address=0.0.0.0

utf8相关的是之前本地录入汉字数据时发现插入失败,汉子和VARCHAR不兼容,在mysql模式下输入STATUS查看的状态时:

Server characterset: latin1Db characterset: latin1Client characterset: utf8Conn. characterset: utf8

经过这个修改后,前2个字符集就全变成了utf8,支持中文。其他的修改就如同我所说的,绑定IP为0.0.0.0,即接收任意地址的主机的连接,端口绑定3306。

但是依然不能访问,只不过错误信息发生了改变,这次很明确了,是显示用户没有连接权限,也就是说用户只能本地连接,依然搜索资料后得出解决方案如下:

1.新建用户远程连接mysql数据库

mysql> grant all on *.* to team@'%' identified by 'java123' with grant option;Query OK, 0 rows affected, 1 warning (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)

2.支持root用户允许远程连接mysql数据库

mysql> grant all on *.* to 'root'@'%' identified by 'cplusplus' with grant option;Query OK, 0 rows affected, 1 warning (0.01 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)

参考:配置mysql允许远程连接的方法

原文来自:http://www.linuxdiyf.com/linux/32478.html

本文地址:http://www.linuxprobe.com/remote-connect-mysql.html编辑:逄增宝,审核员:冯琪返回搜狐,查看更多

责任编辑:

远程连接mysql拒绝访问_远程连接 Mysql 失败的解决方法相关推荐

  1. win7无法连接打印机拒绝访问_win7系统无法连接共享打印机的解决方法

    大家在用win7系统电脑工作和学习的过程中,可能会出现win7系统无法连接共享打印机的情况.如果遇到win7系统无法连接共享打印机的问题应该如何处理呢?对于电脑水平属于小白的用户来说一般不知道win7 ...

  2. win7无法连接打印机拒绝访问_win7系统连接XP网络打印机无法连接到打印机拒绝访问的解决方法...

    今天和大家分享一下win7系统连接XP网络打印机无法连接到打印机拒绝访问问题的解决方法,在使用win7系统的过程中经常不知道如何去解决win7系统连接XP网络打印机无法连接到打印机拒绝访问的问题,有什 ...

  3. cassandra本地连接失败_本地网络发现失败的解决方法连接到OS X中的服务器的问题 | MOS86...

    本地联网通常在Mac上完美无缺,这就是为什么某些用户可能会遇到OS X优胜美地的一些最恶化的问题与网络连接有关.其中一些可能涉及更广泛的连接和Wi-Fi功能问题,以及其他可能影响一般LAN网络功能的能 ...

  4. python token验证失败百分百解决_微信token验证失败的解决方法

    一.问题由来 在使用URL和Token启用微信公众平台开发模式消息接口的时候,我们会碰到下面三种情况 1. token校验失败 这样回头检查一下各项配置是否正确.如果确定配置没有问题,请按下面的方法检 ...

  5. 连接虚拟机mysql无法访问_连接虚拟机mysql无法访问,报错编号1130的解决方法

    新装一台虚拟机mysql的时候,往往会出现win无法连接的情况,报错信息1130,是因为没有权限的问题,解决方案如下: mysql -u root -p mysql>use mysql; mys ...

  6. win7无法连接打印机拒绝访问_“Windows无法连接打印机,操作失败,错误为0x000003e3”...

    请求大家帮助,昨天在共享打印机时出现"Windows无法连接打印机,操作失败,错误为0x000003e3 ".在百度百科查询的资料修改了都不行(在不重装系统前提下,联想台式机都是w ...

  7. win7无法连接打印机拒绝访问_如何解决局域网无法访问SQL Server 2008 无法连接到(local)...

    初次安装使用SQL server 2008时,可能会遇到无法连接到(local)的情况.那么,如何解决此问题? 工具/原料: SQL server 2008 方法/步骤 1. 打开SQL server ...

  8. centos mysql拒绝连接失败_CentOS下mysql远程连接的失败的解决方法

    mysql远程连接失败的解决方法(CentOS版) (1)先将mysql服务停掉 # /etc/init.d/mysqld stop (2)查看mysql配置文件 # vi /etc/my.cnf 特 ...

  9. mysql数据库连接被拒绝访问_记一次MySQL数据库拒绝访问的解决过程

    问题背景 用wordpress搭博客,数据库采用MySQL.为了调试方便,创建账户my_account ,允许它从任意主机访问数据库.CREATE USER `my_account`@'%' IDEN ...

最新文章

  1. 可疑文件_如何识别文件的真假
  2. Hibernate干系映照小结
  3. 原生js实现preAll和nextAll方法
  4. python利器怎么用-UliPad 初体验----python 开发利器
  5. Verilog功能模块——符号位扩展
  6. 雨林木风系统md5值_微软停止Windows系列新系统开发,珍惜你的Win10吧。。。
  7. 单链表逆置 java_单链表的就地逆置--java实现(含头节点和不包含头节点)
  8. 特斯拉电动卡车霸气发布,还有一个意外惊喜(全新跑车)
  9. java 浏览器脚本_各种浏览器开启JavaScript脚本方法
  10. Python数据库编程练习 ※
  11. powerpoint ppt 点击放映后黑屏 解决办法
  12. Array王锐大神力作:osg与PhysX结合系列内容——第5节 角色动画效果(上)
  13. mo汇编指令_moshell常用指令描述
  14. 雷电2接口_雷电3和Type-C接口一样吗?差别很大
  15. MySQL数据表字段类型有哪些
  16. 一招解决macOS12 CleanMyMac闪退
  17. python计算周长代码_Python计算ci的周长
  18. 关乎谷歌浏览器打不开ftp的问题
  19. 蔚来大败局:亏损吓人、市值蒸发800亿,“汽车界小米”死于人力资源管理?...
  20. python自动化运维——系统批量运维管理器pexpect详解

热门文章

  1. 解析阿里巴巴为什么选择赴美上市
  2. 如何在ppt中生成柱状图_ppt中如何添加柱状图 - 卡饭网
  3. SphereCast和SphereCastAll
  4. “最美”的C语言代码
  5. 阿里巴巴大数据实践 - 数据服务
  6. Parsing error processing resource path jndi:/localhost/JOA/WEB-INF/struts-config
  7. 从苏宁电器到卡巴斯基第23篇:难忘的三年硕士时光 I
  8. sparksql常用计算函数
  9. 中软融鑫 java笔试题_中软国际java笔试题
  10. 百马百担问题:100匹马驮100担货物,其中大马驮3担货,中马驮2担,两匹小马驮1担。问共有大、中、小马各有多少匹?编程实现求解的算法。