當時買了一臺Windows Server伺服器,然後安裝上SQL Server後,想通過外網訪問到資料庫,遇到了一些問題,查了很多資料也踩了很多坑。本文主要介紹如何配置SQL Server遠程連接?如何新增管理員用戶等。 ...
作者:西瓜程式猿
主頁傳送門:https://www.cnblogs.com/kimiliucn
伺服器版本:Windows Server 2016
資料庫版本:SQL Server 2016
當時買了一臺Windows Server伺服器,然後安裝上SQL Server後,想通過外網訪問到資料庫,遇到了一些問題,查了很多資料也踩了很多坑。本文主要介紹如何配置SQL Server遠程連接?如何新增管理員用戶等等。
一、如何配置SQL Server遠程連接?
1.1-配置遠程連接
(1)在伺服器上安裝SQL Server後,然後打開資料庫,用本地Windows身份帳戶登錄。
(2)然後右擊第一個伺服器選項,點擊【屬性】。
(3)然後在屬性視窗點擊【連接】,然後再左側勾選上"允許遠程連接到此伺服器"。
1.2-為MSSQLServer配置相應協議
(1)在伺服器上依次點擊:開始——>所有程式——>Microsoft SQL Server 2008——>配置工具——>SQL Server配置管理器。
如果找不到【SQL Server配置管理器】,也可以使用以下命令的方法打開:
首先按鍵盤上的"Windows+R"鍵盤,然後輸入命令打開,註意不同的SQLServer版本對應的命令不一樣。
命令:
SQLServerManager15.msc(對於 SQL Server 2019 )
SQLServerManager14.msc(對於 SQL Server 2017 )
SQLServerManager13.msc(對於 SQL Server 2016 )
SQLServerManager12.msc(對於 SQL Server 2014)
SQLServerManager11.msc(對於 SQL Server 2012 )
SQLServerManager10.msc(對於 SQL Server 2008 )
截圖:
(2)打開【SQL Server配置管理器】後,選擇【SQL Server網路配置】下麵的【MSSQLSERVER的協議】,然後看右邊裡面的TCP/IP是否為"已啟用",如果沒有開啟記得要開啟一下。
雙擊,然後在Enabled中選擇【是】:
(3)右鍵【TCP/IP】,然後點擊【屬性】,找到資料庫安裝伺服器所對應的靜態IP地址所對應的選項,本例為IP4,將TCP動態埠去掉,TCP埠改為1433(預設就是1433),【活動(英文:Action)】和【已啟用(英文:Enabled)】改為【是】。
IPALL配置埠:
1.3-檢查SQLServer伺服器防火牆設置
如果想要快捷設置,直接關閉防火牆,但是不建議這麼乾,不安全。
(1)操作這一步時,首先找到SQL伺服器上那個埠支持【TCP/IP協議】。用戶可以在SQL伺服器防火牆已經處於運行狀態下,右擊【TCP/IP協議】選擇【屬性】。
從上圖中我們可以看出,這台SQL伺服器上支持TCP/IP協議的是【1433】埠。下一步要做的是在防火牆的配置中允許1433埠支持TCP/IP協議即可。
(2)如果伺服器上運行的是Windows Server操作系統,其配置步驟為(其他微軟操作系統的做法類似),打開"高級安全 Windows 防火牆"。
(3)打開後會發現在左邊菜單欄中有“入站規則(Inboud Rules)”選項。將該選項打開,併在右邊菜單欄中選擇“新建規則(New Rule)”選項:
(4)打開“新建規則”選項後,利用“新內置綁定規則嚮導”為【1433】埠配置“內部綁定協議”配置為適用於TCP/IP協議即可。(前提是,需要完成該步驟以前所述的所有步驟),根據下麵的幾幅圖為1433埠配置適用於1433埠即可。
(5)如果是雲服務:需要登錄騰訊雲/阿裡雲開放SQL Server埠。
最後點擊“完成”即可。測試方法:在區域網內找一臺電腦,打開SQLServer資料庫,然後輸入你的Ip和密碼,如果能連接上,就說明已經配置好了。
(5)重啟伺服器。
二、如何新增管理員用戶?
如果還連接不上,估計是sa的密碼錯了或者其他原因,那我們重新新建一個遠程用戶連接試試。
(1)首先在伺服器上本地登錄SQLServer,然後展開【安全性】——>【登錄名】。可以看到所有用戶列表。
(2)右擊【登錄名】,點擊【新建登錄名】。
(3)然後選擇【SQL Server身份驗證】,輸入【密碼/確認密碼】。後面的強制實施密碼策略/強制密碼過期/用戶在下一次登錄是必需更改密碼 等設置可根據自行需求設置,然後點擊確認即可。
三、如何刪除SQL Server某個資料庫中所有的表?
代碼示例:
use 資料庫名(是要刪除某個資料庫的名稱,例如[西瓜程式猿DB])
GO
declare @sql nvarchar(8000)
while (select count(*) from sysobjects where type='U')>0
begin
SELECT @sql='drop table ' + name
FROM sysobjects
WHERE (type = 'U')
ORDER BY 'drop table ' + name
exec(@sql)
end;
原文鏈接:https://www.cnblogs.com/kimiliucn/p/17656685.html
版權聲明:本文為原創文章,版權歸 [西瓜程式猿] 所有,轉載請註明出處,有任何疑問請私信咨詢。
原文鏈接:https://www.cnblogs.com/kimiliucn/p/17656685.html