准备数据库连接
Oracle GoldenGate for Yugabyte(PostgreSQL 变体)使用预打包的 ODBC 驱动程序连接到 Yugabyte 数据库。可以使用数据源名称 (Data Source Name,DSN) 或直接连接来建立连接,并提供数据库服务器主机、端口、数据库和其他信息。
使用 DSN 连接需要将连接详细信息列在 odbc.ini 文件中,而使用直接条目是在从 Web 界面或从管理客户机添加数据库连接时手动输入的。
注:Oracle GoldenGate 连接不支持 PgBouncer。
注:Oracle GoldenGate 不支持与使用 Pgpool 的 Yugabyte 的连接。
执行下面给定的步骤以创建 DSN 条目或计划使用直接连接后,请转到添加数据库连接主题以了解如何创建数据库连接。
设置基于 DSN 的连接
要为 Oracle GoldenGate 进程创建 DSN 连接,首先需要为 Oracle GoldenGate for Yugabyte 部署添加环境变量,然后创建 odbc.ini 文件以存储连接属性。
-
登录到 Service Manager Web 界面。
-
在左侧导航窗格中,单击 Deployments(部署),然后选择 Yugabyte 的部署名称。这将扩展部署的各种设置。
-
单击 Configuration(配置),然后单击 Environment Variables(环境变量)旁边的加号 ( + )。
-
在两个可用字段中提供以下信息。对于环境变量值字段,请确保它是
odbc.ini文件的绝对路径:环境变量名称 =
ODBCINI环境变量值 =
/ogg/deployment/yugabyte/odbc.ini -
单击提交以创建新变量,然后从部署窗格重新启动部署,以使更改生效。
-
在 Oracle GoldenGate 安装的
deployment文件夹中,手动创建odbc.ini文件并在此文件中添加数据源。
创建 DSN 文件时,请使用以下最低设置:
-
Data Source Name-Oracle GoldenGate 进程(例如 Extract 或 Replicat)将引用的源或目标数据库连接的用户定义名称。DSN 名称的长度最多允许为 32 个字母数字字符,并且只能包含来自特殊字符的下划线 (_) 和短划线 (-)。 -
IANAAppCodePage=4- 是缺省设置,但当数据库字符集不是 Unicode 时,可以根据 https://docs.progress.com/bundle/datadirect-connect-odbc-71/page/IANAAppCodePage_9.html#IANAAppCodePage_9 页面上指定的指导进行修改。 -
InstallDir-Oracle GoldenGate PostgreSQL 线协议驱动程序路径的名称,可以使用相对路径,例如:InstallDir =./datadirect -
Driver:是 Oracle GoldenGate PostgreSQL Wire Protocol 驱动程序文件的名称,可以使用相对路径,例如:Driver=./datadirect/lib/ggpsql25.so。 -
Database:这是源或目标数据库的名称。 -
Hostname:这是数据库主机 IP 地址或主机名。 -
PortNumber:这是数据库的监听端口。 -
Oracle GoldenGate for Yugabyte 支持用于 Yugabyte 连接的多个主机和端口。此功能在 Oracle GoldenGate 高可用性 (High Availability,HA) 设置中非常有用。在 Yugabyte HA 设置中,有一台主服务器和多台备用服务器。可以设置连接字符串格式以指定多个主机:
连接字符串 说明 db-user@host1,host2,host3/db-name对于所有主机( host1、host2、host3),将使用默认的 Yugabyte 数据库端口 5433 尝试连接。db-user@host1:1234,host2:2345,host3:3456/db-name将使用与连接字符串中指定的每个主机关联的端口尝试连接。 db-user@host1,host2,host3:1234/db-name所有主机( host1、host2、host3)上使用相同端口号 (1234) 的所有主机。将使用端口 1234 为所有主机(host1、host2、host3)尝试连接。db-user@host1,host2,host3:1234/db-name所有主机( host1、host2、host3)上使用相同端口号 (1234) 的所有主机。将使用端口 1234 为所有主机尝试连接。db-user@host1:3456,host2,host3:1234/db-name如果以其他格式指定连接字符串(其中为某些主机指定了端口号,而其他主机指定了不带任何端口),则最后或最右侧的端口规范将用作未在连接字符串中指定端口号的所有主机的端口号。如连接字符串中所示:
db-user@host1:3456,host2,host3:1234/db-namehost2的端口号将为 1234,这是连接字符串中指定的最右边的端口号。 -
您还可以为 Extract 或 Replicat 用户提供
LogonID和Password,但这些内容将以明文形式存储。建议将这些字段从 DSN 中保留,并将其作为身份证明别名存储在 Oracle GoldenGate wallet 中,并在提取和复制中使用USERIDALIAS参数引用它们。
下面是具有两个 DSN 条目的 odbc.ini 文件示例。以下示例中使用的数据源名称为 PG_src 和 PG_tgt。
|
|
| — |
|
-
保存并关闭
odbc.ini文件。 -
要为 Yugabyte 部署设置 Oracle GoldenGate 中的数据库连接,请参阅添加数据库连接。