Write-behind 配置指南
配置 Write-behind 到您的数据库
本指南将向您展示如何配置 Write-behind 目标连接。
概述
Write-behind 目标连接是在 Write-behind 场景中,Write-behind 实例与目标数据库之间建立的连接。Write-behind 用于将启用了 Write-behind 的 Redis Enterprise 数据库中捕获的更改复制到目标数据库。在部署任何作业之前,必须在 config.yaml
中配置连接,并且必须遵循下面显示的格式之一。可以在 connections
部分中指定多个连接。
对于关系型数据存储
connections:
my-sql-datastore:
type: <db-type> # mysql | oracle | postgresql | sqlserver
host: <db-host> # IP address or FQDN of a database host and instance
port: <db-port> # database port
database: <db-name> # name of the database
user: <db-user> # database user
password: <db-password> # database password
# connect_args: # optional connection parameters passed to the driver - these are driver specific
# query_args: # optional parameters for SQL query execution - typically not required for Write-behind operation
对于非关系型数据存储
connections:
my-nosql-datastore:
type: <db-type> # cassandra
hosts: <db-hosts> # array of IP addresses or host names of a datastore nodes
port: <db-port> # database port
database: <db-name> # name of the database
user: <db-user> # database user
password: <db-password> # database password
Microsoft SQL Server
Microsoft SQL Server 支持不同的身份验证机制(SQL Server 身份验证和集成 Windows 身份验证)和协议(NTLM 和 Kerberos)。Write-behind 可以使用所有这些机制和协议。但是,使用 Kerberos 的系统可能需要一些额外的配置。
账户权限
要使 Write-behind 能够与 SQL Server 数据库一起工作,请检查您指定的账户是否至少被分配了 db_datawriter
角色。
SQL Server 身份验证
要使用 SQL Server 身份验证模式,请创建一个具有登录凭据的用户,然后将目标数据库所需的权限分配给该用户。
connections:
mssql2019-sqlauth:
type: sqlserver
host: ip-10-0-0-5.internal
port: 1433
database: rdi_wb_database
user: rdi_user
password: secret
Windows 身份验证
要使用 Windows 身份验证模式,您需要创建一个 Windows 或 Active Directory 账户,该账户具有访问目标数据库所需的权限,并且能够登录到 SQL Server。托管 Write-behind 的 Linux 机器可以配置为支持 NTLM 身份验证协议。
对于 NTLM
connections:
mssql2019-ntlm:
type: sqlserver
host: ip-10-0-0-5.internal
port: 1433
database: rdi_wb_database
user: MYDOMAIN\rdi_service_account # company-domain\service-account
password: secret # NTLM requires to provide a password
注意:为了使 Windows 身份验证正常工作,必须使用域名指定用户。
配置 Write-behind 连接并部署 Write-behind 作业后,运行以下 SQL 查询,以便操作员检查 Write-behind 是否正在使用预期的身份验证机制和协议。注意:此操作可能需要 sysadmin
角色。
SELECT session_id, auth_scheme FROM sys.dm_exec_connections;
结果指示每个会话使用的 auth_scheme
,可能取值 SQL
、NTLM
和 Kerberos
。