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.检查连接字符串是否与别名不一致。