设置 TeamCity 与 MS SQL Server 的连接
此文章为您提供了如何将 TeamCity 与 MS SQL Server 集成的逐步指南。 快速参考,请查看 此部分。
前提条件
MS SQL 服务器
MS SQL Server 管理工作室
为您的 SQL 服务器启用 TCP/IP 协议
打开 SQL Server 配置管理器并执行以下操作:
展开 SQL Server 网络配置,点击 MS SQL 的协议。
在右侧面板中,右键单击 TCP / IP,然后单击 启用 并选择 是。 (MS SQL 默认禁用了 TCP/IP。)点击 确定。
您需要重启您的 MSSQL 服务器以使更改生效:在左侧面板中,点击 SQL Server 服务,在右侧面板右键单击 SQL Server 并点击 重启。
检查 SQL Server Browser 是否正在运行。
创建新数据库
在 MS SQL Server Management Studio 中:
连接到您的数据库服务器,右键单击对象资源管理器中的 Databases 节点,然后选择 New database。
在 通用 页面上,指定数据库名称(下面的截图中为 "TeamCity")并分配足够的 事务日志 空间。 推荐的最低需求为 1 GB (1024 MB)。 根据服务器使用的强度,需求会有所不同。
指定主要的排序规则。 前往左侧面板中的 Options 节点,然后在右侧选择一个排序规则。 我们建议使用与您的地区相应的区分大小写的排序规则(排序规则的名称以
_CS_AS
结尾)。 点击 Ok 以保存设置:确保
无计数
的设置如下所述被禁用:在对象资源管理器中右键单击服务器实例,转到 属性 | 连接。 在 默认连接选项 框架中,必须关闭无计数
。 如有任何更改,請保存。
设置 TeamCity 数据库用户
SQL Server 支持两种认证方式:SQL Server 认证和 Windows 认证模式。
SQL 认证需要在数据库设置中指定用户名和密码。 建议您在尝试使用 Windows 认证之前,先从这个认证开始。
Windows 认证(MS SQL 集成安全性)允许以特定 Windows 用户身份运行的 TeamCity 服务器连接到 SQL 服务器,而无需提供用户名和密码。 然而,它需要 额外设置
为 TeamCity 创建使用 SQL Server 验证的专用用户
转到 安全 节点,右击 登录,选择 新建登录,然后在打开的 通用 窗口中提供登录名(如下图中的 "TeamCity"),选择 SQL 服务器身份验证并为用户提供密码。 将默认数据库设置为 TeamCity。
在左侧面板中选择 用户映射,在右上侧面板中勾选列表中的 TeamCity 数据库,在下方面板授予用户 TeamCity 数据库所有者权限:选中
db_owner
框。 点击 OK。
使用 Windows 验证创建 SQL 数据库用户
前往 Security 节点,右击 Logins,选择 New Login,在弹出的 General 窗口里输入登录名,选择 Windows 认证,然后点击搜索按钮。
在 选择用户或群组 对话框中,指定将用于运行 TeamCity 的用户帐户。 点击 检查名称。 一旦找到用户,点击 OK。
赋予该用户数据库所有者权限:在左侧窗格中选择 用户映射 ,在右上窗格中勾选列表中的 TeamCity 数据库,在下方窗格中赋予用户 TeamCity 数据库所有者权限:勾选
db_owner
框。 点击 OK。
设置 SQL Server 数据库的 JDBC 驱动器
从 Microsoft 下载中心下载 Microsoft JDBC 驱动程序版本 6.0 或更高版本(根据您的 TeamCity 服务器平台选择
.exe
或.tar.gz
)。将下载的包解压到一个临时目录中。
将刚刚下载的包中的
sqljdbc42.jar
(或 6.0 版本以上的mssql-jdbc-<版本>.jre8.jar
)复制到<TeamCity 数据目录>/lib/jdbc
目录中。
Windows 认证(MS SQL 集成安全性)的附加设置
对于 Windows 身份验证(MS SQL 集成安全性),除了 JDBC 驱动程序外,还需要从 JDBC 驱动程序包中安装本地驱动程序库 sqljdbc_auth.dll
。 所需的库版本取决于服务器使用的 Java 版本的位数。
对于与 TeamCity 服务器捆绑的默认的 32 位 JVM,将 <sql_jdbc_home>/enu/auth/x86/sqljdbc_auth.dll
文件复制到 <TeamCity 数据目录>/lib/jdbc/native/windows-i386
。
对于运行 TeamCity 服务器的 64 位 JVM,使用 <sql_jdbc_home>/enu/auth/x64/sqljdbc_auth.dll
并将其放入 <TeamCity 数据目录>/lib/jdbc/native/windows-amd64
目录中。
启动 TeamCity
启动 TeamCity 服务器。 对于 Windows 身份验证( MS SQL 集成安全性),请确保服务器在用户 在此步骤配置 下运行。
选择 MS SQL 作为数据库。
如果被要求,点击刷新 JDBC 驱动程序。
指定连接设置:
数据库主机 —— 您的 SQL 服务器主机。
端口 - 可选。 默认情况下,TeamCity 将尝试通过默认端口(
1433
)连接到数据库。 如果您的数据库使用了不同的端口(例如,可能由 MS SQL Express 自动分配或手动更改),请记得在此字段中输入它。 您可以在 SQL Server 配置管理器中检查您的数据库所使用的端口:TCP/IP 属性 | IP 地址 | TCP 动态端口。数据库实例名称 — 若使用默认 SQL 服务器实例,此处留空。 如果使用了命名实例,请在此处提供其名称。
数据库名称 —— 新建数据库的名称
选择所需的身份验证类型,对于 SQL Server 身份验证,提供专用 SQL 用户的凭证 在此步骤进行配置。
继续进行设置。 初始化数据库模式和组件需要一些时间。