linux上使用netstat察看mysql端口和连接

linux上使用netstat察看mysql端口和连接



近日发现写的一个java程序的数据库连接在大压力下工作不打正常,因此研究了一下dbcp,中间为了查看mysql服务器的数据库连接情况,需要使用netstat来查看端口和连接, 将使用到的命令整理了一下备忘, 这些命令同样可以用于查看其他运用程序的端口和连接情况.



netstat命令是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息,这里我只用到其中的部分功能.



直接输入netstat,显示

Active Internet connections (w/o servers)

Proto Recv-Q Send-Q Local Address           Foreign Address         State      

tcp        0      0 localhost:41144         localhost:41147         ESTABLISHED 

tcp        0      0 localhost:21576         localhost:21579         ESTABLISHED 

tcp        0      0 linux.local:telnet      10.3.18.129:nbx-au      ESTABLISHED 

tcp        1      0 localhost:39706         localhost:58099         CLOSE_WAIT  

......

Active UNIX domain sockets (w/o servers)

Proto RefCnt Flags       Type       State         I-Node Path

unix  2      [ ]         DGRAM                    910    /var/named/dev/log

unix  2      [ ]         DGRAM                    908    /var/lib/dhcp/dev/log

unix  8      [ ]         DGRAM                    906    /dev/log

.....



输出结果可以分为两个部分,一个是Active Internet connections,另一个是Active UNIX domain sockets. 



netstat 的常用参数: - t、- u、- w和- x分别表示TCP、UDP、RAW和UNIX套接字连接。-a标记,还会显示出等待连接(也就是说处于监听模式)的套接字。-l 显示正在被监听(listen)的端口, -n表示直接显示端口数字而不是通过察看/etc/service来转换为端口名,-p选项表示列出监听的程序



1) netstat -tl

查看当前tcp监听端口

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address           Foreign Address         State      

tcp        0      0 *:rrac                  *:*                     LISTEN      

tcp        0      0 *:34006                 *:*                     LISTEN      

......



2) netstat -tlp

查看当前tcp监听端口, 需要显示监听的程序名,当不清楚mysql的监听端口时比较好用

Active Internet connections (only servers)

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name   

tcp        0      0 *:rrac                  *:*                     LISTEN      -                          

tcp        0      0 *:34006                 *:*                     LISTEN      23425/mysqld   

......





3) netstat -tl | grep 34006

    只查看mysql的监听端口,当前启动的mysql端口为34006,明确知道mysql监听端口时使用

4) netstat -ta | grep 34006

tcp        0      0 *:34006                 *:*                     LISTEN      

tcp        0      0 linux.local:34006       linux.local:41485       ESTABLISHED 

tcp        0      0 linux.local:34006       linux.local:41486       ESTABLISHED 

...

tcp        0      0 10.3.2.35:41488         10.3.2.35:34006         ESTABLISHED 

tcp        0      0 10.3.2.35:41489         10.3.2.35:34006         ESTABLISHED 

tcp        0      0 10.3.2.35:41490         10.3.2.35:34006         ESTABLISHED 



由于数据库和运用程序都放在同一台机器了,因此这里连接被显示了两次. 可以使用-p参数来显示PID,然后grep PID.





5) netstat -tap | grep 34006 | grep 23425

    23425是当前mysql的PID

tcp        0      0 *:34006                 *:*                     LISTEN      23425/mysqld        

tcp        0      0 linux.local:34006       linux.local:41510       ESTABLISHED 23425/mysqld        

tcp        0      0 linux.local:34006       linux.local:41511       ESTABLISHED 23425/mysqld

tcp        0      0 linux.local:34006       linux.local:41516       ESTABLISHED 23425/mysqld

一、查看端口

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

2.登录本地或远程mysql,输入show global variables like 'port',这种方法其实是很多余的,因为你能登录成功mysql,不是使用默认3306端口,就是指定端口才能登录,所以你是知道端口号的,除非一时忘记了想查看。这里也联系到了修改端口号之后要指定端口才嫩登录。

3.启动mysql服务成功使用命令,查看mysql进程占用的端口,windows下输入netstat -anb,找到mysqld进程对应的端口号,也可以用360流量防火墙等工具查看。linux下使用相关命令查看。

二、修改端口

1.windows环境下,在mysql目录下,如有my-default.ini,则复制一份,改名为my.ini,my-defalut.ini目测没有用,因为在其中修改的端口号或删除了该文件,mysql也能启动。linux环境下,找到/etc/my.cnf。

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

3.关闭mysql服务,重新启动mysql服务。windows下使用net stop mysql,net start mysql。linux下使用mysqld -restart。在windosw下使用mysqld -start/stop/restart目测没用,使用了之后,对应的服务没有启动,也就只有mysqld -install/remove有用,添加移除服务。

4.登录的mysql的时候,要指定端口,否则提示联系不到localhost,这是因为mysql连接用了默认端口3306,而我们修改了mysql服务的端口,所以mysql登录失败。

三、指定端口

1.登录mysql时候指定端口,mysql -Pxxx,注意这里是大写P,不是小写p,小写p为密码。

2.指定其他参数

-u:指定用户,如-uroot

-p:小写p,指定密码,如-p123,通常密码不直接跟在-p后面,因为输入的是明文,不安全

-h,指定登录mysql服务器的地址,不填就是主机,指定localhost也可以,-ulocalhost。远程登录其他机器,则需要指定ip地址,如-h192.168.0.111。

整合附录:http://www.blogjava.net/aoxj/archive/2008/02/22/181316.html

http://www.linuxdiyf.com/linux/14581.html

mysql端口查看与修改-netstat命令使用的更多相关文章

  1. MySQL 如何查看及修改数据库引擎

    MySQL 如何查看及修改数据库引擎 1.查看mysql支持的引擎有哪些 show engines 结果,如图所示: 由上图可以看出,只有InnoDB是支持事务的 2.查看当前默认的引擎 show v ...

  2. Windows查看网络端口被占用情况netstat命令

    在windows命令行窗口下执行: C:\>netstat -aon|findstr "80" TCP     127.0.0.1:80         0.0.0.0:0  ...

  3. 网络编程—端口分类调研和netstat命令

    运输层的端口: 1.什么是端口?为甚要使用用端口? 进程的创建和撤销都是动态的,通信的一方几乎无法识别对方机器上的进程,我们需要利用目的主机提供的功能来识别终点. 所以为了解决上述问题,我们就在运输层 ...

  4. MySQL Workbench查看和修改表字段的Comment值

    查看: 选择单个表->[右键]->[Table Inspector] 再选择Columns选项卡即可,把表格拉倒最后一列. 编辑: 选择单个表->[右键]->[Alter Ta ...

  5. netstat命令怎么查看端口是否占用

    转自:http://www.ahlinux.com/start/cmd/527.html netstat命令是一个监控TCP IP网络的非常有用的工具,它可以显示路由表.实际的网络连接以及每一个网络接 ...

  6. linux下mysql 查看默认端口号与修改端口号方法

    一.查看默认端口号 1.登录mysql [root@localhost ~]# mysql -uroot -pEnter password: 输入数据库密码: 2.使用show global vari ...

  7. (转)Linux端口nmap和netstat命令

    场景:弄不清楚端口和服务的关系,总觉得这个命令很有用但是还不清楚如何使用 1 linux端口与服务 1.1 安全概述 网络传输安全.操作系统安全.应用软件安全构成了整个网络应用的安全:其中应用软件安全 ...

  8. 修改mysql端口后重启mysql报错:Can't start server: Bind on TCP/IP port. Got error...n denied

    1:错误信息:如下 [root@host ~]# systemctl status mariadb ● mariadb.service - MariaDB database server Loaded ...

  9. linux网络操作 netstat命令

    关闭与启动网卡 ifdown 网卡设备名 #禁用该网卡设备 ifup网卡设备名 #启用该网卡设备 查看网络状态 netstat  命令 ​ -t 列出tcp协议端口 -u 列出udp协议端口 -n 不 ...

随机推荐

  1. 大闸蟹的项目分析——CSDN APP

    大闸蟹的软件案例分析 项目 内容 这个作业属于那个课程 班级博客 这个作业的要求在哪里 作业要求 我在这个课程的目标是 学习软件工程的相关知识 这个作业在哪个具体方面帮我实现目标 从多角度分析软件 一 ...

  2. Makefile目标文件搜索(VPATH和vpath

    转载:http://c.biancheng.net/view/7051.html 我们都知道一个工程文件中的源文件有很多,并且存放的位置可能不相同(工程中的文件会被放到不同的目录下),所以按照之前的方 ...

  3. hdu 1501 Zipper(DP)

    题意: 给三个字符串str1.str2.str3 问str1和str2能否拼接成str3.(拼接的意思可以互相穿插) 能输出YES否则输出NO. 思路: 如果str3是由str1和str2拼接而成,s ...

  4. windows 系统文件夹挂载到 Linux 系统,拷贝(发送)文件到 windows 系统,实现异地备份

    1.在windows 系统上配置好共享文件夹,用来接收Linux 系统的文件   注意:关闭windows 系统防火墙,或者添加进出站规则 2.在Linux 系统中,创建需要拷贝的文件目录 #mkdi ...

  5. 使用gitlab runner 进行CI(四):使用Gitlab Page托管项目文档

    目录 1.什么是Gitlab Pages 2.开启Gitlab Pages 3.基本过程 4.托管markdown文档 4.1 安装sphinx等依赖 4.2 配置项目的sphinx配置 4.3 编写 ...

  6. JetBrains IntelliJ IDEA汉化

    JetBrains IntelliJ IDEA汉化 开启 IntelliJ IDEA,点击右下角Configure菜单,选择 Plugins.在弹出的 Plugins窗口里,切换至 Marketpla ...

  7. PTA 7-1 公路村村通 (30分)

    PTA 7-1 公路村村通 (30分) 现有村落间道路的统计数据表中,列出了有可能建设成标准公路的若干条道路的成本,求使每个村落都有公路连通所需要的最低成本. 输入格式: 输入数据包括城镇数目正整数N ...

  8. 【Django】Mac 安装pip3-install-mysqlclient 报错

    1.首先在pip3-install-mysqlclient时报错 mysql_config not found 2.逛了一些博客 让安装mysql或者mysql-connector-c 我安装了后者还 ...

  9. Effective C++ 总结笔记(四)

    五.实现 26.尽可能延后变量定义式的出现时间 尽可能延后变量定义式的出现,甚至应该尝试延后这份定义直到能够给他初值实参为止,这样不仅能避免构造和析构非必要对象,避免无意义的default行为,也可增 ...

  10. java更开源-安全可靠国产系统背景下的应有.NET Core的一席之地

    "安可"背景下的中国软件开发 在中美当前背景下的安全可靠国产系统(简称安可),安可产业要实现技术自主可控,需要在四个层面逐步实现:基础硬件设施,如芯片.服务器.存储.交换机.路由器 ...