1.安裝過程沒有什麼說頭 2.下載並安裝SSMS(SQLServer Management Studio),目前已更新到2017.1 3.使用SSMS登陸資料庫 第一次選擇Windows 身份驗證,可免密碼直接登陸。 3.登陸後,創建自己的資料庫 右鍵資料庫文件夾,點擊新建資料庫。 4.作為開發測試 ...
1.安裝過程沒有什麼說頭
2.下載並安裝SSMS(SQLServer Management Studio),目前已更新到2017.1
3.使用SSMS登陸資料庫
第一次選擇Windows 身份驗證,可免密碼直接登陸。
3.登陸後,創建自己的資料庫
右鍵資料庫文件夾,點擊新建資料庫。
4.作為開發測試,只使用預設的配置,簡單填寫後直接確定
資料庫名是連接字元串中的Initial Catalog
5.為新建的資料庫添加遠程登陸用戶名和密碼
在安全性文件夾中的登陸名文件夾上右鍵,新建登陸名。
6.配置登陸名
此處需要配置多項,首先是User ID與密碼,可勾選強制實施密碼策略、強制密碼過期和下次登陸時必須修改密碼,由於是新建管理員,所以並不設密碼過期。
7.勾選伺服器角色
一般會勾選public,如果是管理員,還要勾選sysadmin
8.勾選用戶映射
即確定用戶是映射自哪個資料庫的。由於我是管理員,所以角色成員勾選的比較多,別忘了public角色成員。
9.安全對象使用預設,狀態設置中選擇授予和啟用。
10.斷開舊連接,使用新建的用戶名和密碼登陸,測試連接是否成功。
伺服器名稱是連接字元串中的DataSource,遠程登陸的話,身份驗證選擇SqlServer身份驗證,這樣可以填寫賬號和密碼。預設賬號為SA,預設密碼為安裝時填寫的密碼。但此處我們填寫剛剛新建的用戶和密碼。
11.A若登陸測試成功,則下一步應該配置防火牆,
11.B否則使用Sql Server Configuration Manager檢查本機網路配置。
A1.打開Windows Server 服務管理器,選擇本地伺服器,修改防火牆高級設置的入站規則。
A2.新建程式入站規則
目的是為開放SQL Server的動態連接埠,文檔詳見
https://msdn.microsoft.com/zh-cn/library/ms175043(v=sql.110)
https://msdn.microsoft.com/zh-cn/library/cc646023(v=sql.110)
程式路徑為 $“{資料庫實例安裝路徑}\MSSQL{版本號}.{資料庫實例名}\MSSQL\Binn\Sqlservr.exe”,若分不清,直接搜索Sqlservr.exe。註意拼寫Sqlservr.exe。
A3.新建UDP開放埠1434
目的是使用SQL Server Browser來動態分配埠。
12.使用區域網內另一臺電腦進行測試
首先必須能夠Ping通伺服器主機,若不能,打開防火牆-入站規則-文件和列印共用(回顯請求),ipv4或ipv6看情況。
13.方便的話,使用Visual Studio 2017的資料庫連接服務進行快速測試和快速生成連接字元串。也可使用程式進行測試。
此處填寫的配置與建立資料庫時一致。
可將生成的字元串用代碼再一次進行驗證。
1 public class SqlServerHelper 2 { 3 private static readonly string connStr = @"Data Source=WIN-3JD7GUIRB36\VMSQLSERVER;Initial Catalog=VM719DataBase;Persist Security Info=True;User ID=VM719MANAGER;PWD=test1234;Connect Timeout=5"; 4 private static SqlConnection sqlConn; 5 private static SqlDataAdapter sqlAdapter; 6 private static SqlCommand sqlCommand; 7 8 public static DataSet GetTestTableData() 9 { 10 try 11 { 12 using (sqlConn = new SqlConnection(connStr)) 13 { 14 sqlConn.Open(); 15 } 16 } 17 catch (Exception e) 18 { 19 Console.WriteLine(e); 20 return null; 21 } 22 return null; 23 } 24 }測試用代碼
14.測試連接
若無法連接成功,先關閉Windows Server中的防火牆進行測試,排除是否為防火牆未配置正確。否則從B1開始檢查。
B1.遠程使用用戶和密碼方式登錄實際為TCP,所以應該啟用TCP/IP協議。
Named Pipes,命名管道是使用$IPSec服務,在很多電腦上為了安全是關閉的,且只能在區域網中對資料庫進行連接。不過連接速度較TCP/IP更快。
B2.檢查連接字元串是否與別名不一致。