我为什么很烦在DB服务器上安装杀毒软件

常见的数据库连接问题无外乎是在数据库服务器本地可以连接SQL Server,但通过其他服务器就不可以连接。但这次我却碰到了相反的情况,在服务器本地无法通过IP/实例名连接,但从其他服务器却可以。而且每次重启后问题短暂消失,不多久后,又重现。我还是第一次碰到这样的问题。通过深究后找到了根本原因:竟然是某杀毒软件惹的祸。。。。。

报错截图

下面分享下我的排错过程:

一.本地使用IP/实例名无法访问服务器,但通过机器名可以;

我们知道,使用IP/实例名访问SQL Server时所采用的协议与使用机器名或者"."是不一样的,前者是通过SQL Server的TCP/IP方式访问,后两者是通过命名管道的方式访问,既然命令管道的方式可以访问,说明数据库用户没有被禁用或者没有被拒绝远程连接,而且问题应该在tcp/ip上,也就是说这应该是一个网络问题,而不是SQL Server的配置问题。

二.外部机器可以连接进来,也可以telnet DB服务器IP的1433端口;

这说明DB服务器的防火墙应该没有问题,再说,防火墙是防外不防内,内部不能访问肯定跟防火墙没有关系。

另外,我在其他服务器和DB服务器上的cmd中执行netstat -ano|findstr 1433,可以看到实际上两台服务器建立了tcp连接;

三.在数据库服务器本地telnet 1433端口,telnet不成功;

分析到这里的时候,我突然想起来了之前处理的一个问题,就是服务器本地的使用的tcp端口太多了,达到了上限(65536),导致应用程序新的TCP请求没法分配到TCP端口,因此无法网络通讯。这个现象跟这个情况很类似,数据库服务器本地发起数据库连接时,SSMS要分配一个本地的随机TCP端口,如果端口不够用了,肯定就不能连接SQL Server了,至于外部机器为什么能够连接进来,是因为他们使用的是自己的TCP端口来连接SQL Server的1433端口,并不需要数据库服务器单独再开TCP端口。

根据这个思路,我通过tcpview查看数据库服务器的端口使用情况,结果令我失望了,竟然很正常,难道是我判断出错了,可是按照现象应该就是这样的呀,无意中看到服务器右下角某数字公司的安全卫士,豁然开朗,安全软件经常干影响网络通讯的事情,将其卸载后一切正常。。。。。

PS:本文并不是黑某杀毒软件,只是想说市面常见的这些防护软件这都是为个人电脑设计的,服务器的使用情况跟个人电脑有很大不同,请不要轻易在服务器上安装杀毒软件,以免带来一些意想不到的坏影响。

时间: 2025-01-14 05:31:54

我为什么很烦在DB服务器上安装杀毒软件的相关文章

Vmware vSphere 6.0之在一台服务器上安装Platform与vCenter Server

简介: vCenter Server 为数据中心提供单一控制点.它提供基本的数据中心服务,如访问控制.性能监控以及配置.它将各台计算服务器的资源统一在一起,使这些资源在整个数据中心中的虚拟机之间共享.其原理是:根据系统管理员设置的策略,管理虚拟机到计算服务器的分配,以及资源到给定计算服务器内虚拟机的分配. 在 vCenter Server 无法访问(例如,网络断开)的情况下(这种情况极少出现),计算服务器仍能继续工作.服务器可单独管理,并根据上次设置的资源分配继续运行分配给它们的虚拟机.恢复与

在windows服务器上安装subversion

windows安装: 1.下载subversion  各个版本的说明: CollabNet: 功能最强大的,因为svn的创始者就是CollabNet,不过这个版本因为功能最多,所以整个软件包也是最臃肿的,安装包就有100多M,而且因为是运行在java平台上的,要占用很大的内存资源 SlikSVN和Win32Svn: 这两个基本是一样的,都只有svn的内核,没有界面,也就是使用的时候只能用命令行操作.这两者稍微有些区别,比如Win32Svn提供了和apache的库文件,而SlikSVN没有.不存在

如何在一台服务器上安装两个mysql或者更多

如何在一台服务器上安装两个mysql 1       前言 上篇写了在一台机器上源码编译安装一个mysql,那么如何在一台机器上源码编译安装两个mysql或者更多呢? 2       环境 mysql软件包: mysql-5.6.31.tar mysql-5.5.32.tar 操作系统环境: CentOS release 6.8 (Final) 3       系统规模 /mysqlsoft 用来存放mysql的各个程序 /mysqlsoft/mysql1 用来存放mysql-5.5.32.ta

在Windows Server服务器上安装TeamViewer

在Windows Server服务器上安装TeamViewer,则不允许选择"个人/非商务用途",并提示"仅商务用户"可以在服务器操作上使用TeamViewer.也就是说:在Windows 2003 Server等服务器操作系统上安装,则是商务用户. 要在服务器操作系统上按照"个人/非商务用途"安装,则需要做如下设置:安装TeamViewer前先点击右键,在兼容性里选择Windows XP.设置完毕后再双击安装即可选择"个人/非商务用途

Nginx服务器上安装并配置PHPMyAdmin的教程

这篇文章主要介绍了Nginx服务器上安装并配置PHPMyAdmin的教程,附带一条PHPMyAdmin加载慢的解决方法:)需要的朋友可以参考下一. 准备工作: 如果mysql的root账号为空,需要设置root密码CentOS下默认安装的mysql服务器,里面的root账号默认密码为空,首先为root设置一个密码#mysqladmin -u root password yourpassword *注: 虽然通过一些特殊配置,可以使phpmyadmin允许空密码登录,但是不推荐这样做,尤其是公网的

在linux服务器上安装Jenkins

Jenkins是用java编写的开源持续集成工具,目前被国内外各公司广泛使用.本章教大家如何在linux服务器上安装Jenkins. 获得一台linux服务器 要在linux下安装git,首先你得先有一台linux服务器,这里我选择了腾讯云 安装jdk Jenkins的运行需要依赖jdk,所以在安装Jenkins之前我们得先把jdk装上.没有安装经验的同学可以参考我的另一篇在linux服务器上安装jdk的教程.传送门:在linux服务器上安装jdk yum安装Jenkins 这里推荐使用yum方

阿里云服务器上安装mysql的心路历程(博友们进来看看哦)

在阿里云花了100买了一台云服务器,配置如下: CPU: 1核 内存: 512MB 数据盘: 0G 带宽: 1Mbps 阿里云服务器安装mysql搞得我想吐血,搞了一个多星期,现在才搞好,而且,还有许多问号存在我的脑海里.... 说说我在阿里云服务器上安装mysql的心路历程吧,刚开始安装好java8和tomcat8,安装非常的顺利,但是我接下来要安装mysql了,在网上看到一篇帖子(是rpm包安装的,也在本机上的centos6.5安装过没有问题),所以我就按照这个安装mysql,可是失败了,报

如何在Lunix云服务器上安装Mysql进行远程连接

说说这个服务器上安装mysql真是一个大坑啊 ! 我也不知道自己怎么心血来潮就买一个百度云服务器,然后就想着吧自己做的一些小项目都跑上去.嘿嘿...其实就是想显摆下,写点小应用给不是编程的朋友们使用 ,以满足我自己的小心思,哎呀跑题了,一下没有刹住就给跑偏了,继续说安装的事. 网上百度了许多的教程 ,那叫一个坑啊 !刚开始装JDK 和 Tomcat的时候一切都是顺利.直到开始装Mysql时我不知道是我的服务器不一样还是 我的操作失误!反正就是各种不行 ,那叫一个郁闷.各种方法什么解压tar.gz

在阿里云Linux服务器上安装MySQL

申请阿里云Linux服务器 昨天在阿里云申请了一个免费试用5天的Linux云服务器. 操作系统:Red Hat Enterprise Linux Server 5.4 64位. CPU:1核 内存:512M 硬盘空间:20G 带宽:1Mbps. 今天在这台云服务器上安装了基本环境(JDK.Tomcat和MySQL).本文主要在阿里云Linux云服务器安装MySQL全过程,以及对安装时遇到的问题进行记录. 下载MySQL服务器和客户端 访问MySQL的官网,进入其下载页面(http://dev.m