这个问题已经在这里有一个答案:
- 默认端口为SQL Server 7回答
我想知道的SQL Server数据库引擎使用什么端口? 我需要这样的端口号写配置脚本来授予访问权限与SQL Server安装在机器的特定端口,使之安全。 一个相关的问题是SQL Server数据库引擎是否会使用一个静态端口号来服务所有客户端请求,或者使用一个端口为每个请求?
BTW:我的背景是SQL Server 2008企业。
在此先感谢,乔治
这个问题已经在这里有一个答案:
我想知道的SQL Server数据库引擎使用什么端口? 我需要这样的端口号写配置脚本来授予访问权限与SQL Server安装在机器的特定端口,使之安全。 一个相关的问题是SQL Server数据库引擎是否会使用一个静态端口号来服务所有客户端请求,或者使用一个端口为每个请求?
BTW:我的背景是SQL Server 2008企业。
在此先感谢,乔治
默认情况下会在默认情况下,监听TCP / 1433。 它可能还听一个命名管道(TCP / 445) - 但我认为,必须显式启用这些天。
命名实例,像SQLEXPRESS,听一个动态端口。 它侦听UDP / 1434 1 -动态端口由客户端通过SQL Server解析协议(又名SQL浏览器)解决。 这种动态端口选择在第一次启动时,并且一般通过未来重新启动(存储在注册表中)保持不变 - 但如果有一争,SQL会选择一个新的端口。
你可以,一般应,配置生产的所有 SQL Server实例使用静态端口。 这让防火墙更加容易。
1,你必须把命名实例中的唯一理由,比如说,一个连接字符串,以便客户端知道要问SSRP为动态端口。 如果它是一个静态的或者已知的端口,你可以简单地将客户端指向Server=server.com:port
,留下过实例名称。
一个非常简单的和计划的方式就是在sys.dm_exec_connections查询local_tcp_port列:
select local_tcp_port from sys.dm_exec_connections where local_tcp_port is not null
如果没有返回结果的话,那可能是因为服务器是这台机器上,也没有从其他机器的连接,所以没有TCP连接。
在这种情况下,如果您正在使用SQLCMD查询则只是把“TCP:”在服务器名称,例如前面
sqlcmd -E -S tcp:(local)
或者,如果您正在使用的SqlClient连接,那么你可以添加“网络库= DBMSSOCN”给力TCP,如
string connStr = "Server=(local); Integrated Security=true; Network Library=dbmssocn";
1433是什么SQL Server的默认使用。 它至少自SQL Server 6.0中。
一般情况下,为了安全起见,你不想打开这个向世界。 人们只能通过应用程序/ Web服务来访问你的数据库。 管过直接SQL Server连接上充斥着很多的安全危险。
所有会议都使用这个端口(一拉端口80的网站),但你可以使用SQL Server配置工具,描述改变它, 在这里 。
:1433是默认的。 但是,它有可能改变这个端口,如果你正在处理的多个实例,每个人都会有不同的端口。
快速谷歌搜索变成了下面的链接:
http://decipherinfosys.wordpress.com/2008/01/02/finding-the-port-number-for-a-particular-sql-server-instance/
......我敢肯定的Technet将有更多的信息。
有时端口不是1433
从http://www.php.net/manual/en/function.mssql-connect.php#76256在注册表中查找使用regedit.exe在HKEY_LOCAL_MACHINE \ SOFTWARE \微软\ Microsoft SQL Server的\ SQLEXPRESS \的MSSQLServer \ SuperSocketNetLib \的Tcp 。
其中nameValue对有名称TCPPORT和价值,这是SQL Server正在侦听的端口。