最近在折腾一台 Windows 服务器,学习下 Windows 服务器运维相关的知识。本着生命不息折腾不止的原则,服务器上安装了最新的 SQL Sever 2019 数据库,以下是安装过程中的一些经验总结,记录一下以备后查。

在安装 SQL Sever 2019 之前,我们需要下载一个安装包,这里我使用的是 MSDN 网站上的安装文件,具体信息如下:

  • 文件名称    cn_sql_server_2019_enterprise_x64_dvd_2bfe815a.iso
  • SHA1         3c354dd094243bd4b5922eace6abe669317aa52e
  • 文件大小    1.52GB
  • 发布时间    2019-11-04
  • 下载地址    ed2k://|file|cn_sql_server_2019_enterprise_x64_dvd_2bfe815a.iso|1632086016|58C258FF0F1D006DD3C1F5F17AF3EAFD|/

下载之后解压即可,右键 setup.exe 文件并且以管理员身份运行此文件即可进入安装导航。选择“全新 SQL Sever 独立安装或向现有安装添加功能”即可。

点击确认后会调整到安装界面,在安装界面选择需要安装的版本即可。 Microsoft SQL Sever 2019 目前共有 Standard (标准版)、Evaluation(企业版)、Developer(开发版)。选择自己需要的版本输入产品密钥即可进入下一步。(开发版好像不需要密钥,我没安装开发版不太清楚)

正常地接收许可条款,虽然这东西也基本上没看过。

选择需要安装的功能,生产环境不建议全选,选择自己需要的功能即可。如果是为了学习使用可以全选一下。同时有特殊需要的小伙伴可以尝试配置下“实例根目录(R)”、“共享功能目录(S)”、“共享功能目录(x86)(X)”,加强下安全防护。

安装过程中会创建一个默认实例,如果不想要默认的实例可以自己命名一个实例,ID可以自己设置。

PolyBase 是微软公司 SQL Sever  2016 版开始增加的一种数据虚拟化服务。PolyBase 使您的 SQL Server 实例能够处理从外部数据源读取数据的 Transact-SQL 查询。SQL Server 2016 及更高版本可以访问 Hadoop 和 Azure Blob 存储中的外部数据。从SQL Server 2019开始,您现在可以使用PolyBase访问SQL Server,Oracle,Teradata和MongoDB中的外部数据。关于 Poly Base 的更多多信息,你可以查看这里>>> What is PolyBase?

JDK ( Java语言开发工具包 ) 或 JRE (Java运行环境) 的安装可以自定义其他版本及安装位置。

SQL 服务器的配置可以自定义某项项目的手动、自动、禁用等启动类型。

排序规则没有什么实际意义,一般根据你安装包默认的规则即可。

数据库引擎配置-服务器配置可能比较重要,日后你登录 SQL 服务器时要用到该登录账户,建议选择混合模式更安全,当然这里直接下一步日后再增加也可以。

数据库引擎配置-数据目录用来设置自己的数据存储目录及响应日志的存放位置,可以调整成其他位置,根据自己喜好设置即可。

数据库引擎配置-TempDB 是 SQL Server 四个默认系统数据库中的一个。 TempDB 用于许多SQL操作,包括创建用户定义的临时对象,内部临时对象和版本存储,以及其他功能,如联机重新索引,多个活动记录集(MARS)等。 优化服务器的临时数据库是提高服务器性能的最佳方法之一。关于该功能的设置请查看这里 >>> TempDB Database

数据库引擎配置-MaxDOP 摘要 Microsoft SQL Server 最大并行度(MAXDOP)配置选项控制用于在并行计划中执行查询的处理器数量。此选项确定用于并行执行工作的查询计划运算符的线程数。关于该选项的配置你可以参考这篇文章 >>> Recommendations and guidelines for the “max degree of parallelism” configuration option in SQL Server

数据库引擎配置-内存 SQL Sever 可以根据可用系统资源动态调整内存需求。不过这里可以根据自己实例需求手动调整下。

数据库引擎配置-FILESTREAM 使SQL Server 数据库引擎使用 NTFS 文件系统通过将存储varbinary(max)二进制大型对象 (BLOB) 数据作为文件系统上的文件。 Transact-SQL 语句可插入、更新、查询、搜索和备份 FILESTREAM 数据。 通过 Win32 文件系统接口可以流式方式访问数据。关于该项目的配置可查看这里 >>> Enable and configure FILESTREAM

Analysis Services 服务是用于决策支持和业务分析的分析数据引擎(Vertipaq)。它为业务报表和客户端应用程序(例如Power BI,Excel,Reporting Services报表和其他数据可视化工具)提供企业级语义数据模型。关于该选项的配置可以参考这里 >>> What is Analysis Services?

然后这里可以设置 Analysis Services 服务信息的存储路径。

Integration Services Scale Out 通过在多台计算机上分发包执行,提供高性能 SSIS 包执行。 设置 Scale Out 后,可从 SQL Server Management Studio (SSMS) 以 Scale Out 模式并行运行多个包执行。关于该选项的配置可以参考这里 >>> Integration Services (SSIS) Scale Out

Integration Services Scale Out 主节点负责与辅助角色节点通信。 它通过 HTTPS 返回辅助角色节点上包执行的状态,并对 SSISDB 中的数据进行操作。具体请戳这里 >>> Integration Services (SSIS) Scale Out Master

Integration Services Scale Out 辅助角色节点会从 Scale Out Master 中请求执行任务。 然后通过 ISServerExec.exe 在本地运行包。具体请戳这里 >>> Integration Services (SSIS) Scale Out Worker

Distributed Replay 主要用来评估 SQL Server 升级带来的影响。我们还可以使用它来帮助评估硬件和操作系统升级以及 SQL Server 调整的影响。这里可以指定哪些用户有对 Distributed Replay 控制器的操作权限。想要了解更多可参考这里 >>> SQL Server Distributed Replay

对于 Distributed Replay 可以自定义控制器的名称及工作目录、结果目录的位置。

如果选择了 R 语言的扩展,可能需要你授权许可下 R 语言相关产品及服务的安装。

如果选择了 Python 语言的扩展,可能需要你授权许可下 Python 语言相关产品及服务的安装。

验证需要安装的功能及调整配置文件的路径。

安装过程中可能会出现如下错误 R Install failed 或其他的报错信息,主要是因为如果选择了机器学习服务和语言扩展需要下载用于R和Python支持的相应CAB文件,而这几个文件下载速度着实感人,可能会导致下载错误。

当然,你可以根据提示信息找到指定盘符下的日志文件可以查看具体原因。

 

比如我的错误信息是这样的:

2020-01-11T12:50:14	INFO	Command invoked: D:\BaiduNetdiskDownload\cn_sql_server_2019_enterprise_x64_dvd_2bfe815a\x64\RSetup.exe /download /component SRS /version 9.4.7.25 /language 2052 /logfile C:\Program Files\Microsoft SQL Server\150\Setup Bootstrap\Log\20200111_184849\RSetup.log
2020-01-11T12:50:14	INFO	RSetup.exe version: 9.4.7.3
2020-01-11T12:50:14	INFO	Reading registry value HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\150\Bootstrap\Setup\R_SERV_CACHE
2020-01-11T12:50:14	INFO	Registry value: 
2020-01-11T12:50:14	INFO	Reading registry value HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\150\Bootstrap\BootstrapDir
2020-01-11T12:50:14	INFO	Registry value: C:\Program Files\Microsoft SQL Server\150\Setup Bootstrap\
2020-01-11T12:50:14	INFO	Searching for cache dir: C:\Program Files\Microsoft SQL Server\150\Setup Bootstrap\\R_SERV_CACHE
2020-01-11T12:50:14	INFO	Using default cache directory: C:\Users\Administrator\AppData\Local\Temp\2\
2020-01-11T12:50:14	INFO	Starting download: https://go.microsoft.com/fwlink/?LinkId=2085792&clcid=2052
2020-01-11T12:50:20	INFO	Valid content type at: https://rserverdistribution.azureedge.net/production/SRS/9.4.7.25/1bf346d8-a3ad-43d6-8b4c-2add74fd57c4/SRS_9.4.7.25_1033.cab (size: 250060392 bytes)
2020-01-11T12:50:20	INFO	Downloading to temporary file: C:\Users\Administrator\AppData\Local\Temp\2\tmp16B5.tmp
2020-01-11T12:56:37	ERROR	C:\Users\Administrator\AppData\Local\Temp\2\tmp16B5.tmp: Unable to save temp file [操作已超时。]
2020-01-11T12:56:37	INFO	Exiting with code 2085792

解决方法是去这里 >>> Install SQL Server machine learning R and Python on computers with no internet access 手动下载并安装一下。