UiPath Documentation
automation-suite
2.2510
true
Linux 版 Automation Suite 安装指南
重要 :
请注意,此内容已使用机器翻译进行了部分本地化。 新发布内容的本地化可能需要 1-2 周的时间才能完成。

步骤 5:配置 SQL 数据库

Automation Suite 中的 SQL 数据库要求、支持的版本以及每个产品的数据库配置选项。

数据库

重要提示:
  • 仅支持 Microsoft ODBC 驱动程序 17。
  • Automation Suite 版本 2.2510.0 及更高版本与 SQL 版本 2019 及更高版本兼容。

除非专用要求部分中另有说明,否则这些要求适用于所有 Automation Suite 产品。

Automation Suite 中的每个产品都需要有自己的具有相应规范的 SQL 数据库。

默认情况下,安装程序会在安装过程中为您创建所有数据库。您必须为安装程序提供必要的权限才能在 SQL Server 中执行此操作。

或者,您可以创建自己的数据库。下表列出了数据库名称及其相应的格式。

产品/服务默认数据库名称连接字符串格式
共享平台功能AutomationSuite_PlatformADO.NET
OrchestratorAutomationSuite_OrchestratorADO.NET
Action CenterAutomationSuite_OrchestratorADO.NET
Automation Suite 机器人AutomationSuite_OrchestratorADO.NET
Automation HubAutomationSuite_Automation_HubADO.NET
Automation OpsAutomationSuite_PlatformADO.NET
Data ServiceAutomationSuite_DataServiceADO.NET
InsightsAutomationSuite_InsightsADO.NET
Test ManagerAutomationSuite_Test_ManagerADO.NET
AI CenterAutomationSuite_AICenterJDBC
AppsAutomationSuite_Apps 1ODBC
Document UnderstandingAutomationSuite_DU_DatamanagerODBC PYODBC
Process Mining 2AutomationSuite_ProcessMining_Metadata AutomationSuite_ProcessMining_Warehouse3 AutomationSuite_Airflow4ADO.NET PYODBC PSYCOPG2
Solutions (解决方案)AutomationSuite_AutomationSolutionsADO.NET

1 Apps 数据库的密码不得包含#{

2为了最大限度地减少延迟问题,强烈建议将 Process Mining 数据库部署在与计算资源(Kubernetes 集群)相同的区域中。

3 AutomationSuite_ProcessMining_Warehouse使用 ADO.NET 和 PYODBC 格式。

4 AutomationSuite_Airflow PostgreSQL 数据库使用 SQLAlchemy 连接字符串格式。与AutomationSuite_Airflow数据库的连接不能{字符开头。

如果您选择为新安装的 Automation Suite 使用自己的数据库,我们强烈建议设置新的数据库,而不是使用现有数据库。此预防措施有必要,以防止旧数据库中的剩余元数据与 Automation Suite 的操作发生任何冲突。

您还可以在弹性池中使用数据库,以获得更高的成本效益。

如果在配置文件中手动设置连接字符串,则可以对 SQL、JDBC 或 ODBC 密码进行转义,如下所示:

  • 对于 SQL:在密码的开头和结尾添加' ,并将任何其他'加倍。
  • 对于 JDBC/ODBC:在密码的开头添加{ ,在密码的末尾添加} ,并将其他任何}加倍。
备注:

如果您的密码包含 URL 保留字符,请将每个特殊字符替换为其在连接字符串中经过百分比编码的等效字符。例如,如果密码为P@ssw0rd#1! ,则必须将其编码为P%40ssw0rd%231%21

SQL 排序规则

Automation Suite 已在服务器和数据库级别支持将 SQL 排序规则设置为 SQL_Latin1_General_CP1_CI_AS。我们强烈建议您使用此特定设置,以获得最佳性能和稳定性。

虽然您可以灵活使用所选的排序规则,但请注意,未经测试的配置可能会导致意外问题。

重要提示:

我们不建议使用二进制 SQL 或任何区分大小写的排序规则,因为它们会导致安装 Automation Suite 时出现已知问题。

权限

如果您希望安装程序在提供的 SQL Server 上创建数据库,请确保至少向用于连接到数据库的 SQL 帐户授予 dbcreator 角色。

如果要为所有产品创建自己的数据库,则必须为 SQL 帐户授予所有 Automation Suite 数据库的db_owner角色。

如果安全限制不允许使用db_owner ,则 SQL 帐户必须在所有数据库上具有以下角色和权限(唯一的例外是 Insights,它仍需要db_owner )。

  • db_securityadmin
  • db_ddladmin
  • db_datawriter
  • db_datareader
  • 对 dbo、dt、authz 和 msgbus 架构的EXECUTE权限

仅在安装期间或重新配置数据库时才需要db_securityadmindb_ddladmin角色;之后您可以将其撤销。

SQL Server 密码

Automation Suite 仅支持列出的 SQL 密码:

  • TLS_AES_256_GCM_SHA384
  • TLS_CHACHA20_POLY1305_SHA256
  • TLS_AES_128_GCM_SHA256
  • TLS_AES_128_CCM_SHA256
  • ECDHE-ECDSA-AES256-GCM-SHA384
  • ECDHE-RSA-AES256-GCM-SHA384
  • ECDHE-ECDSA-CHACHA20-POLY1305
  • ECDHE-RSA-CHACHA20-POLY1305
  • ECDHE-ECDSA-AES256-CCM
  • ECDHE-ECDSA-AES128-GCM-SHA256
  • ECDHE-RSA-AES128-GCM-SHA256
  • ECDHE-ECDSA-AES128-CCM
  • ECDHE-ECDSA-AES128-SHA256
  • ECDHE-RSA-AES128-SHA256
  • ECDHE-ECDSA-AES256-SHA
  • ECDHE-RSA-AES256-SHA
  • ECDHE-ECDSA-AES128-SHA
  • ECDHE-RSA-AES128-SHA
  • AES256-GCM-SHA384
  • AES256-CCM
  • AES128-GCM-SHA256
  • AES128-CCM
  • AES256-SHA256
  • AES128-SHA256
  • AES256-SHA
  • AES128-SHA
  • DHE-RSA-AES256-GCM-SHA384
  • DHE-RSA-CHACHA20-POLY1305
  • DHE-RSA-AES256-CCM
  • DHE-RSA-AES128-GCM-SHA256
  • DHE-RSA-AES128-CCM
  • DHE-RSA-AES256-SHA256
  • DHE-RSA-AES128-SHA256
  • DHE-RSA-AES256-SHA
  • DHE-RSA-AES128-SHA
  • PSK-AES256-GCM-SHA384
  • PSK-CHACHA20-POLY1305
  • PSK-AES256-CCM
  • PSK-AES128-GCM-SHA256
  • PSK-AES128-CCM
  • PSK-AES256-CBC-SHA
  • PSK-AES128-CBC-SHA256
  • PSK-AES128-CBC-SHA
  • DHE-PSK-AES256-GCM-SHA384
  • DHE-PSK-CHACHA20-POLY1305
  • DHE-PSK-AES256-CCM
  • DHE-PSK-AES128-GCM-SHA256
  • DHE-PSK-AES128-CCM
  • DHE-PSK-AES256-CBC-SHA
  • DHE-PSK-AES128-CBC-SHA256
  • DHE-PSK-AES128-CBC-SHA
  • ECDHE-PSK-CHACHA20-POLY1305
  • ECDHE-PSK-AES256-CBC-SHA
  • ECDHE-PSK-AES128-CBC-SHA256
  • ECDHE-PSK-AES128-CBC-SHA
  • RSA-PSK-AES256-GCM-SHA384
  • RSA-PSK-CHACHA20-POLY1305
  • RSA-PSK-AES128-GCM-SHA256
  • RSA-PSK-AES256-CBC-SHA
  • RSA-PSK-AES128-CBC-SHA256
  • RSA-PSK-AES128-CBC-SHA

Document Understanding 要求 SQL Server 具有 SQL Server 数据库引擎的全文搜索组件,默认情况下并不总是安装该组件。

如果您在安装 SQL Server 时没有选择全文搜索,请在配置 Document Understanding 之前再次运行 SQL Server 安装程序以进行添加。

有关更多信息,请查看本指南,了解如何在 SQL Server 上添加/安装功能。您还可以找到SQL Server 组件的完整列表,其中包括全文搜索。

Insights 的 SQL 要求

备注:

Insights 不支持 Azure AD 身份验证。如果您使用 Azure AD 进行身份验证,则无法加载仪表板,也无法从 Microsoft SQL 数据库获取数据。

Insights 要求使用支持列存储索引和.json函数的 SQL Server 2019 或 2022。建议使用 SQL Server Enterprise,因为它更高效的线程和可扩展性。

对于 Azure SQL,请确保数据库为 S3 服务目标或更高。

确保将 Insights 数据库的兼容性级别设置为 130 或更高。在大多数情况下,默认设置可满足此要求。有关详细信息,请参阅查看或更改数据库 的兼容性级别

安装将验证这两个条件,并在未达到最低要求时向您发出警示。

Data Service 的 SQL 要求

如果您创建自己的数据库,请确保向用户授予以下 Data Service 权限:

  • db_ddladmin
  • db_datareader
  • db_datawriter
GRANT ALTER ANY SENSITIVITY CLASSIFICATION TO {userName};
GRANT VIEW ANY SENSITIVITY CLASSIFICATION TO {userName};
GRANT ALTER ANY SENSITIVITY CLASSIFICATION TO {userName};
GRANT VIEW ANY SENSITIVITY CLASSIFICATION TO {userName};

Process Mining 的 SQL 要求

重要提示:

在 Automation Suite 版本 2.2510.0 和 2.2510.1 中,如果启用了 Process Mining,则无法对平台数据库使用自定义数据库名称。如果指定了自定义名称,则 OMS 回填作业将失败。

为避免这种情况,请在安装 Process Mining 时使用AutomationSuite_Platform作为平台数据库名称。

启用 Process Mining 以在 Automation Suite 上安装时,您必须为AutomationSuite_Airflow引入 PostgreSQL 数据库。PostgreSQL 是AutomationSuite_Airflow唯一支持的数据库类型。

AutomationSuite_Airflow PostgreSQL 数据库

备注:

在安装或升级到 Automation Suite 2.2510 或更高版本之前,您需要为AutomationSuite_Airflow手动创建 PostgreSQL 数据库。安装程序不会自动创建适用于 Airflow 的 PostgreSQL 数据库。

从 Microsoft SQL Server 迁移到 PostgreSQL 时,不需要迁移数据。如果配置设置正确,则系统会在运行 Sync Airflow 时重建数据库。

支持的 PostgreSQL 版本

支持 PostgreSQL 版本 12.x 至 16.x。建议使用此范围内的最新版本的 PostgreSQL,以获得最佳兼容性和性能。

硬件要求

安装了适用于 Airflow 的 PostgreSQL 数据库的计算机必须满足以下硬件要求。

  • 核心数: 4
  • 内存: 16 GiB
  • 存储空间: 128 GiB
  • IOPS: >= 500 IOPS
所需权限

PostgreSQL Airflow 用户(或任何专用数据库用户)必须

  • 指定 Airflow 数据库的“所有权限”权限。
  • 服务器公共架构上的“所有授权”。
  • 将“search_path”设置为“公开”。
备注:

您可能需要更新 PostgreSQL 基于主机的身份验证文件pg_hba.conf ,以将 Airflow 用户添加到数据库访问控制列表,然后重新加载数据库配置以应用更改。

以下代码显示了设置 PostgreSQL 数据库的示例。

CREATE DATABASE airflow_db
  WITH ENCODING 'UTF8'
  LC_COLLATE='en_US.UTF-8'
  LC_CTYPE='en_US.UTF-8'
  TEMPLATE template0;

CREATE USER airflow_user WITH PASSWORD 'airflow_pass';
GRANT ALL PRIVILEGES ON DATABASE airflow_db TO airflow_user;

-- PostgreSQL 15 requires additional privileges:
GRANT ALL ON SCHEMA public TO airflow_user;
CREATE DATABASE airflow_db
  WITH ENCODING 'UTF8'
  LC_COLLATE='en_US.UTF-8'
  LC_CTYPE='en_US.UTF-8'
  TEMPLATE template0;

CREATE USER airflow_user WITH PASSWORD 'airflow_pass';
GRANT ALL PRIVILEGES ON DATABASE airflow_db TO airflow_user;

-- PostgreSQL 15 requires additional privileges:
GRANT ALL ON SCHEMA public TO airflow_user;

以下代码显示了一个数据库编码验证示例。

SELECT pg_encoding_to_char(encoding) AS encoding
FROM pg_database
WHERE datname = 'airflow_db';
SELECT pg_encoding_to_char(encoding) AS encoding
FROM pg_database
WHERE datname = 'airflow_db';

有关如何为 Airflow 设置 PostgreSQL 数据库的详细信息,请参阅Airflow 官方文档

默认服务器端口

Airflow 数据库与 PostgreSQL 连接的默认服务器端口为5432 。如果您使用的是 PgBounder 连接池程序,通常要使用端口6432

以下代码块显示了使用端口5432 PostgreSQL 的一些示例连接字符串。

示例连接字符串:

postgresql+psycopg2://testadmin:<password>@test-cu231009v3-postgresql.postgres.database.azure.com:5432/automationsuite_airflow
postgresql+psycopg2://testadmin:<password>@test-cu231009v3-postgresql.postgres.database.azure.com:5432/automationsuite_airflow

使用 Kerberos 的示例连接字符串:

postgresql+psycopg2://kerberos_user:@kerberospostgres.AUTOSUITEAD.LOCAL:5432/automationsuite_airflow
postgresql+psycopg2://kerberos_user:@kerberospostgres.AUTOSUITEAD.LOCAL:5432/automationsuite_airflow

使用托管身份的示例连接字符串:

postgresql+psycopg2://testmanagedidentity:@test-postgresql-1.postgres.database.azure.com/airflow-ci-sfasaksqacu8524745
postgresql+psycopg2://testmanagedidentity:@test-postgresql-1.postgres.database.azure.com/airflow-ci-sfasaksqacu8524745

可以根据系统要求,将默认服务器端口配置为使用任何可用端口。

PG 保票员

由于 Airflow 使用短期连接,因此强烈建议您设置 PgBooker。PgBunker 是一个用于 PostgreSQL 的轻量级连接池程序。

有关如何设置 PgBooker 的详细信息,请参阅官方PgBooker 文档

AutomationSuite_ProcessMining_Warehouse database

Automation Suite 上的 Process Mining 需要单独的 Microsoft SQL Server 用于AutomationSuite_ProcessMining_Warehouse ,以便为 Process Mining 流程应用程序存储数据。

重要提示:

为确保 Process Mining 正常运行,建议使用 Microsoft SQL Server 2022。

以上概述了为AutomationSuite_ProcessMining_Warehouse设置 Microsoft SQL Server 数据库计算机的硬件要求和建议。

要计算硬件要求,您需要了解以下内容:

  • 流程中的 (百万) 个事件数。
  • 输出数据中案例和事件字段的数量。

出于性能原因,建议在开发环境中处理记录数量有限的小型开发数据集。

您可以使用UiPath Automation Suite 安装大小调整计算器来确定硬件要求,从而为 Process Mining 设置专用的 Microsoft SQL Server 计算机。将 Process Mining 添加到“产品”部分时,系统将显示 1 个专用 SQL Server 的最低要求。有关详细信息,请参阅硬件要求

连接字符串中使用的 SQL 用户必须在安装期间和安装后具有db_securityadmin数据库级别角色,才能在 Process Mining 数据仓库 SQL Server 上启用按应用程序安全性。有关详细信息,请参阅官方 Microsoft 文档,了解“数据库级别角色”“配置流程应用程序安全性”

建议使用以下命令区分表名称和列名称的大小写:

ALTER DATABASE AutomationSuite_ProcessMining_Warehouse COLLATE SQL_Latin1_General_CP1_CS_AS
ALTER DATABASE AutomationSuite_ProcessMining_Warehouse COLLATE SQL_Latin1_General_CP1_CS_AS

这可以防止加载数据时因列名称相似而导致的错误,例如IDid 。它还可确保将仅大小写不同的文本值视为不同的文本值。例如:

  • 'activity 1' == 'activity 1'
  • 'Activity 1' != 'activity 1'

这可以防止 SQL 转换中出现重复问题。

AI Center 的 SQL 要求

连接到外部 Orchestrator 的 AI Center 要求

如果安装连接到外部 Orchestrator 的 AI Center,则必须确保为 AI 事件和 AI Storage 服务创建名为 AutomationSuite_Platform 的新数据库。

重要提示:

目前,AI Center 需要 SQL Server 2019 及更高版本才能最佳运行。

在启用 FIPS 140-2 的计算机上安装 AI Center 的要求

要在启用 FIPS 140-2 的计算机上安装 AI Center,请执行以下步骤:

  1. 在开始安装 Automation Suite 之前,请执行以下步骤:
    1. 按照 Microsoft 说明,在计划安装 Microsoft Server 的计算机上启用 FIPS 140-2。

    2. 在已启用 FIPS 140-2 的计算机上安装 Microsoft SQL Server。

    3. 通过从 SQL Server 或任何可以连接到具有已配置 SQL 主机名的 SQL Server 的服务器运行以下命令,以获取 Microsoft SQL Server 证书:

      nmap -sV -p <port> -vv --script ssl-cert domain
      nmap -sV -p <port> -vv --script ssl-cert domain
      
  2. 在安装 Automation Suite 期间,请执行以下步骤:
    1. 将以下值附加到 cluster_config.json 文件中的 AI Center sql_connection_string_template_jdbc 连接字符串:encrypt=true;trustServerCertificate=false;fips=true;

      示例:

      jdbc:sqlserver://sfdev1804627-c83f074b-sql.database.windows.net:1433;database=DB_NAME_PLACEHOLDER;user=testadmin;password=***;encrypt=true;trustServerCertificate=false;fips=true;Connection Timeout=30;hostNameInCertificate=sfdev1804627-c83f074b-sql.database.windows.net"
      jdbc:sqlserver://sfdev1804627-c83f074b-sql.database.windows.net:1433;database=DB_NAME_PLACEHOLDER;user=testadmin;password=***;encrypt=true;trustServerCertificate=false;fips=true;Connection Timeout=30;hostNameInCertificate=sfdev1804627-c83f074b-sql.database.windows.net"
      

      有关数据库配置的详细信息,请参阅高级安装体验更新 SQL 数据库

    2. 添加从步骤 1.c 中导出的证书。主机的信任存储区。有关详细信息,请参阅更新 CA 证书

HA 的 SQL 要求

对于 SQL Server 的高可用性配置,请选择“始终开启”可用性组。有关详细信息,请参阅始终开启可用性组概述

Orchestrator 的 SQL 要求

重要提示:

为提高性能、避免死锁并防止 SQL 中的脏读,请确保将“READ_COMMITTED_SNAPSHOT”选项设置为“ON”。

要在启用了快照隔离的情况下使用多个机器人处理同一队列,务必将 ALLOW_SNAPSHOT_ISOLATION 选项设置为 ON

使用以下查询检查READ_COMMITTED_SNAPSHOTALLOW_SNAPSHOT_ISOLATION是否已启用:

SELECT is_read_committed_snapshot_on, snapshot_isolation_state FROM sys.databases
   WHERE name like 'PLACEHOLDER'
SELECT is_read_committed_snapshot_on, snapshot_isolation_state FROM sys.databases
   WHERE name like 'PLACEHOLDER'

确保将 PLACEHOLDER 替换为您的 Orchestrator 数据库名称。

如果设置已启用,则返回值为1

如果设置已禁用,则返回值为0 。使用以下查询启用它:

# To enable READ_COMMITTED_SNAPSHOT
ALTER DATABASE <PLACEHOLDER>
SET READ_COMMITTED_SNAPSHOT ON

# To enable ALLOW_SNAPSHOT_ISOLATION
ALTER DATABASE <PLACEHOLDER>
SET ALLOW_SNAPSHOT_ISOLATION ON
# To enable READ_COMMITTED_SNAPSHOT
ALTER DATABASE <PLACEHOLDER>
SET READ_COMMITTED_SNAPSHOT ON

# To enable ALLOW_SNAPSHOT_ISOLATION
ALTER DATABASE <PLACEHOLDER>
SET ALLOW_SNAPSHOT_ISOLATION ON

确保将<PLACEHOLDER>替换为您的 Orchestrator 数据库名称。

如果您对测试自动化和/或更新服务器使用不同的数据库,则还必须在这些数据库上启用READ_COMMITTED_SNAPSHOTALLOW_SNAPSHOT_ISOLATION

此页面有帮助吗?

连接

需要帮助? 支持

想要了解详细内容? UiPath Academy

有问题? UiPath 论坛

保持更新