查看sqlserver的端口號


背景

  這幾天想寫一個使用java連接sqlserver的數據庫連接測試程序。但是在查看數據庫連接字符格式以后發現需要sqlserver數據庫服務的端口號。在安裝sqlserver的時候也沒有提到端口號的問題,以前安裝mysql的時候倒是見到過3306這個端口號,安裝oracle的時候1521這個端口號也沒有看到。不過oracle連接的時候都用的是1521,比如oracle的的數據庫連接字符串格式為:jdbc:oracle:thin:@localhost:1521:SID。不知道安裝兩個oracle數據庫是否還是1521這個端口號。

通過存儲過程查看

  閑話莫提,我們直接講解如何查看端口號。需要提的是在我的機器上安裝了sqlserver2008和sqlserver2012兩個版本的數據庫。我們首先打開sqlserver management studio(簡稱SSMS)連接sqlserver2008的數據庫實例,然后執行如下存儲過程:

--查詢端口號
exec sys.sp_readerrorlog 0, 1, 'listening'

查詢出來的結果如下圖所示:

從上圖我們可以看出sqlserver2008的端口號是5419。

接下來關閉SSMS,再從重新打開,接着連接sqlserver2012。繼續執行上述的存儲過程,查詢結果如下圖所示:

上圖說明sqlserver2012的端口號是5413。

通過Sql Server配置管理器(SSCM)

首先打開SSCM,如下圖所示:

然后再sqlserver網絡配置中開啟TCP/IP協議,如下圖所示:

在這里我們要將SQLEXPRESS和SQL2012兩個協議中的TCP/IP協議都開啟。

然后查看TCP/IP協議的屬性,如下所示:

如上圖所示,我們在IPALL中看到了“TCP動態端口”的值為5419,這就是我們sqlserver2008的端口號。我們打開sql2012的協議查看,發現IPALL屬性如下:

sql2012的端口號是5413,這個跟我們用存儲過程查出來的端口號一模一樣。

通過sp_readerrorlog來查看sql server監聽的協議以及端口(補充:2012-9-10)

在SSMS中輸入sp_readerrorlog命令來查看sql server信息,回到到如下類似的監聽信息:

復制代碼
--tcp協議
Server is listening on [ 'any' <ipv6> 1500].
Server is listening on [ 'any' <ipv4> 1500].
Server is listening on [ 'any' <ipv6> 1433].
Server is listening on [ 'any' <ipv4> 1433].
Server is listening on [ ::1 <ipv6> 1434].
Server is listening on [ 127.0.0.1 <ipv4> 1434].
--named pipe協議無法關閉,即使關閉以后也會有local connection provider
Server local connection provider is ready to accept connection on [ \\.\pipe\sql\query ].
--share memory
Server local connection provider is ready to accept connection on [ \\.\pipe\SQLLocal\MSSQLSERVER ].
復制代碼

這是在關閉named pipe的情況下,如果開啟named pipe的話,那么會是如下類型:

--開啟named pipe
Server named pipe provider is ready to accept connection on [ \\.\pipe\sql\query ].

原文:https://www.cnblogs.com/xwdreamer/archive/2012/06/23/2559344.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM