查看: 442|回复: 0

[SQLServer] SQL Server 2016 在Windows Server 2012 R2 上的初步安装与远程连接实战

发表于 2017-11-5 00:09:24
太阳http代理AD

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. 1 public class SqlServerHelper
  2. 2 {
  3. 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. 4 private static SqlConnection sqlConn;
  5. 5 private static SqlDataAdapter sqlAdapter;
  6. 6 private static SqlCommand sqlCommand;
  7. 7
  8. 8 public static DataSet GetTestTableData()
  9. 9 {
  10. 10 try
  11. 11 {
  12. 12 using (sqlConn = new SqlConnection(connStr))
  13. 13 {
  14. 14 sqlConn.Open();
  15. 15 }
  16. 16 }
  17. 17 catch (Exception e)
  18. 18 {
  19. 19 Console.WriteLine(e);
  20. 20 return null;
  21. 21 }
  22. 22 return null;
  23. 23 }
  24. 24 }
复制代码
测试用代码

14.测试连接

若无法连接成功,先关闭Windows Server中的防火墙进行测试,排除是否为防火墙未配置正确。否则从B1开始检查。

B1.远程使用用户和密码方式登录实际为TCP,所以应该启用TCP/IP协议。

Named Pipes,命名管道是使用$IPSec服务,在很多计算机上为了安全是关闭的,且只能在局域网中对数据库进行连接。不过连接速度较TCP/IP更快。

B2.检查连接字符串是否与别名不一致。



太阳http代理AD
回复

使用道具 举报