我们已经准备好了,你呢?

2026我们与您携手共赢,为您的企业形象保驾护航!

在linux系统中,可以检查mysql端口状况,同时也能查看其当前的连接情况,这些操作都非常必要,有助于维护系统稳定运行

最近发现一个Java程序在数据库承受巨大负荷时运行异常,于是研究了DBCP,期间为了检查MySQL服务器的连接状态,需要查看端口和连接,现将相关指令归纳记录下来,这些指令也适用于检查其他软件的端口和连接状况。

指令是管理TCP/IP网络的一种得力手段,能够呈现路由清单、当前的网络会话以及各个网络适配器的运作状况,而我仅运用了其中一小部分用途。

直接输入,显示

(w/o )

原始接收队列长度, 发送队列长度, 本地地址, 状态情况

传输控制协议 0 0 端口 41144 与端口 41147 之间没有数据传输

传输控制协议 没有数据包发送 没有数据包接收 本地端口是 21576 远程端口是 21579

传输控制协议 0 0 linux.local 发往 10.3.18.129 探测 nbx-au

传输控制协议 1 个连接 0 个错误, 端口从 39706 接收到数据, 发送到端口 58099

......

UNIX (w/o )

基本标识符 标记类别 数据类型 当前状况 索引节点位置

Unix第二版,数据报协议,端口编号九百一十,日志文件存放在目录/var/named/dev/log中

Unix系统第二类型,数据报协议,端口数为九十零八,日志文件存储于目录/var/lib/dhcp/dev/

Unix系统版本为8,采用数据报方式传输,端口号为906,对应设备文件为/dev/log

.....

这个输出结果可以分成两个部分,第一个部分是空白的,第二个部分是UNIX。

这些参数通常包括:- t用于TCP连接,- u用于UDP连接,- w用于RAW连接,- x用于UNIX连接。- a标记能够显示处于监听状态的套接字。- l用来展示正在监听的网络端口,- n选项会直接展示端口号而不去查询/etc/目录来转换成端口名称,- p用来列出负责监听的网络服务程序。

1) -tl

查看当前tcp监听端口

(only )

Proto Recv-Q Send-Q Local                     State

网络传输控制协议数据包数量为零,接收端口为rrac,监听地址为任意,连接来源为任意,本地端口为任意,远程端口为任意。

网络传输控制协议数据包数量为零,接收端端口为34006,发送端端口为任意,连接状态为监听中

......

2) -tlp

检查当前tcp监听端口,需要呈现监听的应用程序名称,当不确定mysql的监听端口时,这种方法很实用

(only )

接收队列长度, 发送队列长度, 本地地址, 状态, 进程标识符/名称

传输控制协议 没有数据包 没有字节 监听端口 rrac 所有来源 所有目的地 没有过滤器

网络传输控制协议,发送数据包数量为零,接收数据包数量也为零,监听端口从34006开始,接受所有来源的连接请求,分配给进程号为23425的进程使用。

......

3) -tl | grep 34006

仅确认mysql的开放端口,现已知当前运行的mysql端口是34006,一旦清楚mysql的监听端口便可用

4) -ta | grep 34006

tcp        0      0 *:34006                 *:*                    

网络传输控制协议数据包数量为零,接收和发送的数据量均为零,源端口号为三万四千零六,目标端口号为四万一千四百八十五

传输控制协议 没有数据包 没有字节 linux.local的34006端口 与 linux.local的41486端口 建立了连接

...

网络传输控制协议, 发送端端口为41488, 接收端端口为34006, 源地址为10.3.2.35, 目标地址为10.3.2.35

网络传输控制协议数据包数量为零,无数据传输,源端地址为十进制点分格式点一零点三点二点三五点四一万四千八百九,目的端地址为十进制点分格式点一零点三点二点三五点三万四千零六

网络传输控制协议, 发送数据包为, 零, 接收数据包为, 零, 源端口号为, 十进制三十又三, 点, 二, 点, 二, 点, 三五, 端口号, 目的端口号为, 十进制三十又三, 点, 二, 点, 二, 点, 三五, 端口号

因为数据存储和执行程序都在一个设备上,所以连接会显现两次。能够借助-p参数来展示进程标识,再配合grep指令来筛选该标识。

过滤数据, 查找包含特定编号的内容, 那个编号是34006, 同时还要验证其中是否含有编号23425

23425是当前mysql的PID

tcp        0      0 *:34006                 *:*                           23425/

传输控制协议 没有发送的数据包 没有接收的数据包 linux.local 主机上的 34006 端口 与 linux.local 主机上的 41510 端口 进行连接 这个连接的进程标识符是 23425

传输控制协议 没有数据包 没有字节 linux.local 发出的端口是 34006 接收来自 linux.local 的端口是 41511 该连接的进程 ID 是 23425

传输控制协议 没有数据包 没有字节 linux.local 发出的端口是 34006 接收来自 linux.local 的端口是 41516 这个连接的进程 ID 是 23425

一、查看端口

1.在命令行中输入: --,输出的信息可以看到端口号

连接本地或远程的mysql数据库,输入命令显示像“port”这样的信息,这种做法其实没有必要,因为你能够成功登录到mysql,要么就是使用了标准的3306端口,要么就是指定了其他端口进行连接,所以你应该清楚端口号是多少,除非你突然想确认一下。这也说明了,如果你修改了端口号,那么就必须使用这个新的端口才能登录。

启动mysql服务后,可通过命令查询端口占用情况,输入特定指令即可发现进程对应的端口信息,或者借助360流量防火墙等工具进行查看,在linux系统中也可采用相关指令进行检测。

二、修改端口

当前场景中,若在mysql文件夹里存在my-.ini文件,需要将其复制一份,并将其重命名为my.ini,因为my-.ini文件似乎并无实际作用,从前人经验来看,即便在其中调整了服务端口或将其移除,mysql服务依然能够正常运行,在linux系统上,需要定位到/etc/f目录

2.在my.ini中指定端口号,port = xxx。

终止mysql运行,再重新开启mysql运行。在系统里,采用net stop mysql命令来停止,用net start mysql命令来启动。在linux系统里,使用特定指令来管理。在特定系统环境下,尝试了使用-start/stop选项,但发现它们无法正常启动服务,只有基本命令有效,用于服务的添加和删除。

使用mysql进行登录操作时,必须明确指出端口号,否则系统会反馈无法建立连接的信息,原因是mysql的连接过程默认采用了3306端口,而我们之前已经更改了mysql服务的端口号,因此导致登录操作无法成功进行。

三、指定端口

连接mysql时需指明端口号,使用命令mysql -Pxxx,请注意此处P需大写,并非小写p,小写p代表密码。

2.指定其他参数

-u:指定用户,如-uroot

使用小写字母p来设定密码,例如写作-p123,但一般不将密码明文紧跟在-p之后输入,这样做存在安全隐患

指定连接mysql服务器的位置,若不填则默认为本机,也可明确指定位置,若需从其他设备远程连接,就必须填写目标设备的ip地址,例如填写-h192.168.0.111。

整合附录:

二维码
扫一扫在手机端查看

本文链接:https://by928.com/11366.html     转载请注明出处和本文链接!请遵守 《网站协议》
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。

项目经理在线

我们已经准备好了,你呢?

2020我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

13761152229

上班时间

周一到周五

公司电话

二维码
微信
线