OGG 26ai setup on a remote server rather than on the oracle db server
VM setup:
Oracle Linux 8. already there with no oracle binding.
Set hostname & enable DNS:
prereqs: let us set hostname, which I havent done for this lab machine.
hostnamectl set-hostname voracleos8x-common-sa1.lab.local
Output:
[root@localhost /]# hostnamectl set-hostname voracleos8x-common-sa1.lab.local
[root@localhost /]# hostnamectl
Static hostname: voracleos8x-common-sa1.lab.local
Icon name: computer-vm
Chassis: vm
Machine ID: 3127bf70841445e78b8768c88ad47f8e
Boot ID: 27d9f09adfa44b858c8307ec6d0cfe05
Virtualization: oracle
Operating System: Oracle Linux Server 8.8
CPE OS Name: cpe:/o:oracle:linux:8:8:server
Kernel: Linux 5.15.0-104.119.4.2.el8uek.x86_64
Architecture: x86-64
[root@localhost /]#
/etc/hosts entry:
echo "10.0.2.15 voracleos8x-common-sa1.lab.local voracleos8x-common-sa1" | tee -a /etc/hosts
[root@localhost /]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.0.2.15 voracleos8x-common-sa1.lab.local voracleos8x-common-sa1
[root@localhost /]#
fix DNS:
tee /etc/resolv.conf << EOF
search lab.local
nameserver 127.0.0.1
options ndots:1
EOF
ACTIVE_CONN=$(nmcli -t -f NAME con show --active | head -1)
echo "Active connection: $ACTIVE_CONN"
nmcli con mod "$ACTIVE_CONN" ipv4.ignore-auto-dns yes ipv6.ignore-auto-dns yes
Output:
[root@localhost /]# ACTIVE_CONN=$(nmcli -t -f NAME con show --active | head -1)
[root@localhost /]# echo "Active connection: $ACTIVE_CONN"
Active connection: System eth0
[root@localhost /]#
[root@localhost /]# getent hosts voracleos8x-common-sa1
10.0.2.15 voracleos8x-common-sa1.lab.local voracleos8x-common-sa1
[root@localhost /]# getent hosts voracleos8x-common-sa1.lab.local
fe80::a00:27ff:fe4c:9030 voracleos8x-common-sa1.lab.local
[root@localhost /]#
[root@localhost /]# hostname -f
voracleos8x-common-sa1.lab.local
[root@localhost /]# cat /etc/resolv.conf
search lab.local
nameserver 127.0.0.1
options ndots:1
[root@localhost /]#
[root@localhost /]# ping voracleos8x-common-sa1.lab.local
PING voracleos8x-common-sa1.lab.local (10.0.2.15) 56(84) bytes of data.
64 bytes from voracleos8x-common-sa1.lab.local (10.0.2.15): icmp_seq=1 ttl=64 time=0.698 ms
64 bytes from voracleos8x-common-sa1.lab.local (10.0.2.15): icmp_seq=2 ttl=64 time=0.031 ms
^C
--- voracleos8x-common-sa1.lab.local ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1007ms
rtt min/avg/max/mdev = 0.031/0.364/0.698/0.334 ms
[root@localhost /]# ping voracleos8x-common-sa1
PING voracleos8x-common-sa1.lab.local (10.0.2.15) 56(84) bytes of data.
64 bytes from voracleos8x-common-sa1.lab.local (10.0.2.15): icmp_seq=1 ttl=64 time=0.031 ms
64 bytes from voracleos8x-common-sa1.lab.local (10.0.2.15): icmp_seq=2 ttl=64 time=0.032 ms
^C
--- voracleos8x-common-sa1.lab.local ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1073ms
rtt min/avg/max/mdev = 0.031/0.031/0.032/0.005 ms
[root@localhost /]# getent hosts voracleos8x-common-sa1
10.0.2.15 voracleos8x-common-sa1.lab.local voracleos8x-common-sa1
[root@localhost /]# getent hosts voracleos8x-common-sa1.lab.local
fe80::a00:27ff:fe4c:9030 voracleos8x-common-sa1.lab.local
[root@localhost /]#
## stop firewalld
[root@localhost /]# systemctl stop firewalld
[root@localhost /]#
Or add firewall port:
firewall-cmd --permanent --add-port=7810/tcp
firewall-cmd --permanent --add-port=7809/tcp
firewall-cmd –reload
firewall-cmd --list-all
[root@voracleos8x-common-sa1 ~]# sudo firewall-cmd --permanent --add-port=7809/tcp
success
[root@voracleos8x-common-sa1 ~]# sudo firewall-cmd --permanent --add-port=7810/tcp
success
[root@voracleos8x-common-sa1 ~]# firewall-cmd --reload
success
[root@voracleos8x-common-sa1 ~]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: eth0
sources:
services: cockpit dhcpv6-client ssh
ports: 7809/tcp 7810/tcp
protocols:
forward: no
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
[root@voracleos8x-common-sa1 ~]#
User setup:
/usr/sbin/groupadd -g 54321 oinstall
/usr/sbin/groupadd -g 54322 dba
/usr/sbin/useradd -u 54321 -g oinstall -G dba oracle
Output:
[root@localhost app]# /usr/sbin/groupadd -g 54321 oinstall
[root@localhost app]# /usr/sbin/groupadd -g 54322 dba
[root@localhost app]# /usr/sbin/useradd -u 54321 -g oinstall -G dba oracle
[root@localhost app]# id oracle
uid=54321(oracle) gid=54321(oinstall) groups=54321(oinstall),54322(dba)
[root@localhost app]#
[root@localhost app]# passwd oracle
Changing password for user oracle.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
[root@localhost app]#
OGG Installation:
Download OGG binary:
url: edelivery.oracle.com
File name: V1054774-01.zip [OGG 26ai or 23.26.0.1]
OGG Install details:
OGG HOME: /u02/app/oracle/product/ogg23ai
OGG Inventory: /u02/app/oracle/oraInventory
Response file:
responsefile: oggcore_23ai.rsp
oracle.install.responseFileVersion=/oracle/install/rspfmt_ogginstall_response_schema_v23_1_0
INSTALL_OPTION=ORA23ai
SOFTWARE_LOCATION=/u02/app/oracle/product/ogg23ai
INVENTORY_LOCATION=/u02/app/oracle/oraInventory
UNIX_GROUP_NAME=oinstall
OGG Installation:
/vagrant/OGG/fbo_ggs_Linux_x64_Oracle_services_shiphome/Disk1/runInstaller -silent -responseFile /home/oracle/oggcore_23ai.rsp
Output:
[oracle@localhost ~]$ /vagrant/OGG/fbo_ggs_Linux_x64_Oracle_services_shiphome/Disk1/runInstaller -silent -responseFile /home/oracle/oggcore_23ai.rsp
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 120 MB. Actual 29619 MB Passed
Checking swap space: must be greater than 150 MB. Actual 4095 MB Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2026-04-28_11-15-59AM. Please wait ...[oracle@localhost ~]$ You can find the log of this install session at:
/tmp/OraInstall2026-04-28_11-15-59AM/installActions2026-04-28_11-15-59AM.log
Please check '/u02/app/oracle/oraInventory/logs/silentInstall2026-04-28_11-15-59AM.log' for more details.
As a root user, run the following script(s):
1. /u02/app/oracle/oraInventory/orainstRoot.sh
Successfully Setup Software.
The log of this install session can be found at:
/u02/app/oracle/oraInventory/logs/installActions2026-04-28_11-15-59AM.log
Root Action:
[root@localhost /]# /u02/app/oracle/oraInventory/orainstRoot.sh
Changing permissions of /u02/app/oracle/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.
Changing groupname of /u02/app/oracle/oraInventory to oinstall.
The execution of the script is complete.
[root@localhost /]#
Prepare deployment response file:
prepare env variables: create the folder path below and setup tnsnames.ora
ENV_TNS_ADMIN=/u02/app/oracle/network/admin
response file: /home/oracle/oggca.rsp
Actual response values:
Perform deployment:
/u02/app/oracle/product/ogg23ai/bin/oggca.sh -silent -responseFile /home/oracle/oggca.rsp
Output:
[oracle@localhost ~]$ /u02/app/oracle/product/ogg23ai/bin/oggca.sh -silent -responseFile /home/oracle/oggca.rsp
As part of the process of registering Service Manager as a system daemon, the following steps will be performed:
1- The deployment will be stopped before registering the Service Manager as a daemon.
2- A new popup window will show the details of the script used to register the Service Manager as a daemon.
3- After the register script is executed, the Service Manager daemon will be started in the background and the deployment will be automatically restarted.
Click "OK" to continue.
In order to register Service Manager as a system service/daemon, as a "root" user, execute the following script:
(1). /u02/app/oracle/product/oggsrvm01/bin/registerServiceManager.sh
To execute the configuration scripts:
1.Open a terminal window
2.Login as "root"
3.Run the script
Successfully Setup Software.
[oracle@localhost ~]$
<< no need to enter any prompts.
Root script:
[root@localhost /]# /u02/app/oracle/product/oggsrvm01/bin/registerServiceManager.sh
Copyright (c) 2017, 2024, Oracle and/or its affiliates. All rights reserved.
----------------------------------------------------
Oracle GoldenGate Install As Service Script
----------------------------------------------------
OGG_HOME=/u02/app/oracle/product/ogg23ai
OGG_CONF_HOME=/u02/app/oracle/product/oggsrvm01/etc/conf
OGG_VAR_HOME=/u02/app/oracle/product/oggsrvm01/var
OGG_USER=oracle
Running OracleGoldenGateInstall.sh...
Created symlink /etc/systemd/system/multi-user.target.wants/OracleGoldenGate.service → /etc/systemd/system/OracleGoldenGate.service.
OracleGoldenGate enabled.
OracleGoldenGate active.
Successfully Setup Software.
[root@localhost /]#
## install log:
[oracle@localhost OGGCAConfigActions2026-04-28_12-51-32PM]$ tail -100f oggcaConfigAction2026-04-28_12-51-32PM.log
- LD_LIBRARY_PATH : ${OGG_HOME}/lib/instantclient:${OGG_HOME}/lib
- TNS_ADMIN : /u02/app/oracle/network/admin
--------------------------------------------------------------------------------
Service Manager Administrator Account
--------------------------------------------------------------------------------
- Username : ogg
--------------------------------------------------------------------------------
Deployment Administrator Account
--------------------------------------------------------------------------------
- Username : ogg
--------------------------------------------------------------------------------
Security Options
--------------------------------------------------------------------------------
- SSL / TLS Security : false
--------------------------------------------------------------------------------
Port Settings
--------------------------------------------------------------------------------
- Enable Administration Service : true
- Administration Service Port : 7820
- Enable Distribution Service : true
- Distribution Service Port : 7821
- Enable Receiver Service : true
- Receiver Service Port : 7822
- Enable Monitoring : true
- Metrics Service port : 7823
- Critical Service : false
- Metrics Service DataStore type : BDB
- Enable Remote Metrics for the Deployment : false
--------------------------------------------------------------------------------
..
INFO: Log of this session available at: /u02/app/oracle/oraInventory/logs/OGGCAConfigActions2026-04-28_12-51-32PM
INFO: -----------Job Distribution------------
INFO: Start Service Manager : 0.167
INFO: Verify Service Manager : 0.167
INFO: Add Service Manager Administrator User : 0.167
INFO: Install Plugin Service in Service Manager : 0.167
INFO: Create Deployment : 0.167
INFO: Verify Deployment : 0.167
INFO: Removing Service Manager deployment. : 0
INFO: Stop Deployment : 0
INFO: Register Service Manager as a system service/daemon : 0
INFO: ---------------------------------------
..
INFO: Setup completed with overall status as Succeeded
INFO: Remove Deployment job succeeded. 'STOP_DEPLOYMENT'.
INFO: The script file does not exist, it will be created.
INFO: /u02/app/oracle/product/oggsrvm01/bin/registerServiceManager.sh
INFO: Setting file permissions attributes for file: /u02/app/oracle/product/oggsrvm01/bin/registerServiceManager.sh
INFO: rwxr-x---
INFO: In order to register Service Manager as a system service/daemon, as a "root" user, execute the following script:
INFO: (1). /u02/app/oracle/product/oggsrvm01/bin/registerServiceManager.sh
...
INFO: Exit Status is 0
INFO: Shutdown oracle.install.ivw.oggca.driver.OGGCA
INFO: Unloading Setup Driver
INFO: inventory location is/u02/app/oracle/oraInventory
Service status:
[oracle@localhost OGGCAConfigActions2026-04-28_12-51-32PM]$ ps -ef|grep -i ogg23ai
oracle 29257 1 0 12:52 ? 00:00:01 /u02/app/oracle/product/ogg23ai/bin/AIService
oracle 29306 1 0 12:52 ? 00:00:03 /u02/app/oracle/product/ogg23ai/bin/ServiceManager --inventory '/u02/app/oracle/product/oggsrvm01/etc/conf'
oracle 29429 29306 1 12:52 ? 00:00:04 /u02/app/oracle/product/ogg23ai/bin/adminsrvr --config /u02/app/oracle/product/oggsrvm01/var/run/ogg_test_01-adminsrvr-config.dat
oracle 29431 29306 6 12:52 ? 00:00:25 /u02/app/oracle/product/ogg23ai/bin/distsrvr --config /u02/app/oracle/product/oggsrvm01/var/run/ogg_test_01-distsrvr-config.dat
oracle 29433 29306 6 12:52 ? 00:00:25 /u02/app/oracle/product/ogg23ai/bin/pmsrvr --config /u02/app/oracle/product/oggsrvm01/var/run/ogg_test_01-pmsrvr-config.dat
oracle 29435 29306 1 12:52 ? 00:00:05 /u02/app/oracle/product/ogg23ai/bin/recvsrvr --config /u02/app/oracle/product/oggsrvm01/var/run/ogg_test_01-recvsrvr-config.dat
oracle 29538 16609 0 12:59 pts/2 00:00:00 grep --color=auto -i ogg23ai
[oracle@localhost OGGCAConfigActions2026-04-28_12-51-32PM]$
On server reboot: the below service comes online fine
[oracle@voracleos8x-common-sa1 ~]$ systemctl status OracleGoldenGate
● OracleGoldenGate.service - Oracle GoldenGate Service Manager
Loaded: loaded (/etc/systemd/system/OracleGoldenGate.service; enabled; vendor preset: disabled)
Active: active (running) since Tue 2026-04-28 13:03:27 UTC; 51min ago
Main PID: 776 (ServiceManager)
Tasks: 127 (limit: 12138)
Memory: 453.0M
CGroup: /system.slice/OracleGoldenGate.service
├─ 776 /u02/app/oracle/product/ogg23ai/bin/ServiceManager --inventory '/u02/app/oracle/product/oggsrvm01/etc/c>
├─1330 /u02/app/oracle/product/ogg23ai/bin/adminsrvr --config /u02/app/oracle/product/oggsrvm01/var/run/ogg_te>
├─1333 /u02/app/oracle/product/ogg23ai/bin/AIService
├─1336 /u02/app/oracle/product/ogg23ai/bin/distsrvr --config /u02/app/oracle/product/oggsrvm01/var/run/ogg_tes>
├─1339 /u02/app/oracle/product/ogg23ai/bin/recvsrvr --config /u02/app/oracle/product/oggsrvm01/var/run/ogg_tes>
└─1341 /u02/app/oracle/product/ogg23ai/bin/pmsrvr --config /u02/app/oracle/product/oggsrvm01/var/run/ogg_test_>
[oracle@voracleos8x-common-sa1 ~]$