运维调试记录:无法远程连接MySQL数据库

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhaobryant/article/details/45192887 问题描述出于兴趣,本人在Windows和Ubuntu系统上均安装了MySQL服务器和客户端。
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhaobryant/article/details/45192887

问题描述

出于兴趣,本人在Windows和Ubuntu系统上均安装了MySQL服务器和客户端。现在有这样一些预备信息:

  • Windows系统的IP地址: 192.168.5.196
  • Ubuntu系统的IP地址:192.168.5.228

现在我试图在Windows上远程连接Ubuntu终端主机。

首先,在远程Ubuntu主机上配置MySQL访问权限,具体过程如下:

mysql> grant all privileges on . to ‘longlong’@’%’ identified by ‘123456’;

现在,在Ubuntu主机上查询MySQL权限信息如下:

这里写图片描述

现在,在Windows上远程登录Ubuntu主机MySQL数据库,结果为:

这里写图片描述

一直报出这种错误!

问题解决方法

在CSDN ASK提出这个问题后,尝试了各位么么哒网友的建议,比如通过mysql -u xx -p xxxx -h xxxx或是关闭Windows防火墙以及通过ufw disable命令关闭Ubuntu防火墙,仍然无法解决这个问题。

后来,得知Ubuntu上MySQL通过/etc/mysql/my.cnf配置文件配置整个MySQL。摘录一二:

41 [mysqld]
42 port = 3306
43 basedir = /usr
44 datadir = /var/lib/mysql
45 tmpdir = /tmp
46 #Instead of skip-networking the default is now to listen only
47 #on localhost which is more compatible and is not less secure.
48 bind-address = 127.0.0.1

注意,在上述配置文件中,存在一句配置命令:

bind-address = 127.0.0.1

这句命令即表明,本Ubuntu主机在本地监听,仅处理本地的连接请求。

我们也可以通过netstat命令来查看相关端口监听信息:

shell> netstat -anp | grep 3306
output> tcp 127.0.0.1:3306 LISTEN

现在,我们将my.cnf的bind-address语句前添#号注释掉,并重启MySQL服务:

shell> sudo service mysql restart
output> mysql stop/waiting mysql start/running, process 25765

现在,我们在Windows远程连接Ubuntu上的MySQL数据库,就不会报错了。

再次运行netstat命令:

shell> netstat -anp | grep 3306
output> tcp 0.0.0.0:3306 LISTEN

这时,我们发现3306端口不再仅仅监听在本地,同时也可以监听来自远端的连接请求。

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
16天前
|
关系型数据库 MySQL Linux
CentOS 7系统下详细安装MySQL 5.7的步骤:包括密码配置、字符集配置、远程连接配置
以上就是在CentOS 7系统下安装MySQL 5.7的详细步骤。希望这个指南能帮助你顺利完成安装。
207 26
|
4月前
|
SQL 关系型数据库 MySQL
宝塔面板之MySQL无法远程连接
宝塔面板默认安装的MySQL,root用户无远程权限。本文详细介绍如何使root支持远程连接:确保3306端口已放行,通过SSH登录服务器并进入MySQL,修改root用户的host为'%',最后刷新权限。具体步骤包括使用SQL命令修改用户主机设置,并确保网络配置正确,从而实现root的远程访问。
682 34
|
5月前
|
SQL 存储 运维
从建模到运维:联犀如何完美融入时序数据库 TDengine 实现物联网数据流畅管理
本篇文章是“2024,我想和 TDengine 谈谈”征文活动的三等奖作品。文章从一个具体的业务场景出发,分析了企业在面对海量时序数据时的挑战,并提出了利用 TDengine 高效处理和存储数据的方法,帮助企业解决在数据采集、存储、分析等方面的痛点。通过这篇文章,作者不仅展示了自己对数据处理技术的理解,还进一步阐释了时序数据库在行业中的潜力与应用价值,为读者提供了很多实际的操作思路和技术选型的参考。
115 1
|
5月前
|
运维 监控 Cloud Native
云原生之运维监控实践:使用 taosKeeper 与 TDinsight 实现对 时序数据库TDengine 服务的监测告警
在数字化转型的过程中,监控与告警功能的优化对保障系统的稳定运行至关重要。本篇文章是“2024,我想和 TDengine 谈谈”征文活动的三等奖作品之一,详细介绍了如何利用 TDengine、taosKeeper 和 TDinsight 实现对 TDengine 服务的状态监控与告警功能。作者通过容器化安装 TDengine 和 Grafana,演示了如何配置 Grafana 数据源、导入 TDinsight 仪表板、以及如何设置告警规则和通知策略。欢迎大家阅读。
159 0
|
7月前
|
运维 关系型数据库 MySQL
运维|MySQL 数据库被黑,心力交瘁
前一阵有一个测试用的 MySQL 数据库被黑了,删库勒索的那种,这里记录一下事情经过,给自己也敲个警钟。
92 2
|
7月前
|
SQL 运维 关系型数据库
MySQL 运维 SQL 备忘
MySQL 运维 SQL 备忘录
88 1
|
8月前
|
运维 安全 网络安全
常用的运维工具:SSH和远程连接工具详解
常用的运维工具:SSH和远程连接工具详解
315 3
|
7月前
|
SQL 存储 监控
串口调试助手连接SQL数据库的技巧与方法
串口调试助手是电子工程师和软件开发人员常用的工具,它能够帮助用户进行串口通信的调试和数据分析
|
9月前
|
SQL 存储 小程序
【教程】navicat配合HTTP通道远程连接SQLite数据库
本文介绍了如何通过 Navicat Premium 工具配合 n_tunnel_sqlite.php 和 HTTP 通道远程连接服务器上的 SQLite 数据库。SQLite 是一种自给自足的、无服务器的 SQL 数据库引擎,由于其端口未对外开放,直接使用 Navicat 进行远程连接不可行。文章详细记录了使用 HTTP 通道实现远程连接的过程,包括定位本地 `ntunnel_sqlite.php` 文件,将其上传至服务器,并通过 Navicat 配置 HTTP 通道连接 SQLite 数据库的具体步骤。
385 0
【教程】navicat配合HTTP通道远程连接SQLite数据库
|
9月前
|
存储 SQL 运维
运维开发.MySQL.范式与反范式化
运维开发.MySQL.范式与反范式化
77 1
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等