0x01. 前言

有时候,有人会带着这样的疑问?

当netstat -ano发现3306监听在0.0.0.0上,是不是就可以判断mysql是对外开放的

答案当然是否定的。

0x02. mysql连接特性

此时我们可以做一个测试,mysql监听在0.0.0.0上

并且服务器的mysql用户设置如下:

我们要知道localhost、127.0.0.1、::1这三个host存在优先级,他们优先级以此从高到低。可以这样理解:

如果localhost和127.0.0.1分别设置密码是123和456,那么最后本地登录mysql的密码是123,而不是456

[root@helen ~]# telnet 123.55.91.39 3306
Trying 123.55.91.39...
Connected to 123.55.91.39.
Escape character is '^]'.
GHost '115.29.170.215' is not allowed to connect to this MySQL serverConnection closed by foreign host.

用navicat连接可以看到返回的错误码是1130.也表示不能连接


此时我们新增一个非root用户,并且将host改为%,此时可以看到返回的错误码是1045。

即:只要host存在%,连接mysql错误的情况都会返回1045错误码。

并且telnet返回的结果如下,还能看到mysql版本是5.5.16-log

[root@helen ~]# telnet 123.55.91.39 3306
Trying 123.55.91.39...
Connected to 123.55.91.39.
Escape character is '^]'.
N
5.5.16-logdt=n4V5D^-d1f0XMYX-mysql_native_passwordConnection closed by foreign host.

0x03. 利用navicat导出的脚本脱裤

navicat在连接数据库的时候可以使用http通道。用法如下:
先将下图导出的脚本文件放到服务器上,通过脚本文件的url来连接。比其他脱裤脚本方便很多。

但是win版本的navicat没有这个按钮,mac版的有。win版的在navicat的安装目录下。

连接的时候,在http选项中通道地址填写http://123.55.91.39:8089/ntunnel_mysql.php

主机名:localhost,这样就可以正常用navicat连接一样

最后脱裤的效果:

0x04. 总结

  1. mysql返回1130表示没有账号开启外联
  2. mysql返回1045表示有账号开启外联,但是不知道是哪个账号
  3. localhost、127.0.0.1、::1 这三个优先级以此从高到低

标签:mysql, 拖库

mysql连接的特性及拖库姿势相关推荐

  1. isql 测试mysql连接_[libco] 协程库学习,测试连接 mysql

    历史原因,一直使用 libev 作为服务底层:异步框架虽然性能比较高,但新人学习和使用门槛非常高,而且串行的逻辑被打散为状态机,这也会严重影响生产效率. 用同步方式实现异步功能,既保证了异步性能优势, ...

  2. nodejs对连接mysql数据库进行封装,使用库实现对数据库的增删查改操作

    一.先安装mysql中间件 npm i mysql --save 二.config.json配置库文件 {"host": "localhost","p ...

  3. MySQL 8.0,MySQL 5.7,MySQL5.6,MySQL 5.5 特性对比

    文章目录 MySQL 5.5 特性,相对于 5.1 MySQL 5.6 特性,相比于 5.5 MySQL 5.7 特性,相比于 5.5 5.6 MySQL 8.0 特性,相比于 5.7 MySQL 5 ...

  4. “拖库”防不胜防,如何早做预防?

    近期有消息爆出某酒店数据库被拖库,数据主要包括注册资料.酒店入住登记信息以及开房记录. 此次事件涉及用户信息十分敏感,后续连串反应将造成的损失难以估计.我们在思考如何保护自己的信息安全同时,更要思考企 ...

  5. asp.net mysql 连接池_asp.net 使用数据库连接池

    数据库连接数过万的真相,原来我们错怪阿里云RDS了 在一次数据库连接问题中,我们坚持认为数据库连接数过万是阿里云RDS的问题,但后来阿里云提供了当时的数据库连接情况,让我们动摇了自己的想法. 上面这5 ...

  6. mysql多个字符串连接池_使用Coroutine\Channel实现一个简单的MySQL连接池

    Channel通道,类似于go语言的chan,支持多生产者协程和多消费者协程,Swoole底层自动实现了协程的切换和调度 Channel实现原理 通道与PHP的Array类似,仅占用内存,没有其他额外 ...

  7. 即使被拖库,也可以保证密码不泄露

    转自:http://blog.coderzh.com/2016/01/10/a-password-security-design-example/ 在前一篇文章<设计安全的账号系统的正确姿势&g ...

  8. c++与mysql建立连接_C++与mysql连接遇到的问题汇总

    最近接触了很多数据库的东西,本来是一直接触的是sql server,不过由于项目需要就开始对mysql进行了连接.下面就让我这个菜鸟浅谈下经验吧. 对于C++连接mysql,我不太喜欢多下载一个软件m ...

  9. linux怎么在win上安装mysql_CentOS下安装MySQL及Windows下使用Navicat for MySQL连接

    安装 查看有没有安装过: yum list installed mysql* rpm -qa | grep mysql* 查看有没有安装包: yum list mysql* 安装mysql客户端: y ...

最新文章

  1. SAP MM 预留单据里的Base date和Requirement date
  2. 【FPGA】单端口RAM的设计(同步读、同步写)
  3. 每天学一点儿shell:xargs 命令
  4. background 旋转_基于HTML5 Canvas 实现矢量工控风机叶轮旋转
  5. php 框架 路由解析,来!狂撸一款PHP现代化框架 (路由的设计)
  6. linux命令 su和sudo,解析Linux中sudo,su与su -的异同
  7. phpstudy后门漏洞复现
  8. 学java要学vue吗_学vue之前必看
  9. 网络IPC非阻塞和异步I/O
  10. 论文浅尝 | 知识图谱的不确定性衡量
  11. C++学习之路 | PTA乙级—— 1059 C语言竞赛 (20 分)(精简)
  12. 协议簇:ICMP 解析
  13. 计算机win10开机音乐,大师传授win10系统电脑开机总是自动播放音乐的方案
  14. golang变量的注意
  15. like语句太慢 sqlserver_SQLSERVER查询速度慢的原因收集以及优化建议
  16. java物流管理系统_JAVA语言的物流管理系统的设计和实现.doc
  17. 基于融云直播 SDK,快速实现连麦布局(内附代码)
  18. Zabbix实现短信报警设置(实战)
  19. 微信开放平台开源_开源的价值在于开放的开发过程
  20. MMORPG网络游戏开发之Protobuf的基本使用

热门文章

  1. 如何提高PUE值 数据中心能耗详解
  2. 去哪儿网手机版机票数据
  3. MacOS安装PyAudio
  4. 计算机架构设计的8个伟大思想
  5. 经典算法——筛选法求素数(素数筛选)
  6. 你认识这些三叠字和四叠字吗? 犇猋骉蟲麤毳淼掱焱垚鑫卉芔鱻飍姦掱贔
  7. 用js实现动态添加删除表格数据
  8. mtk android touch panel调试
  9. R语言统计分析:bootstrap方法
  10. html制作收货地址页面,css 收货地址平行四边形的线条样式示例代码