Install Oracle GoldenGate Veridata 23c
This blog post shows how to install Oracle GoldenGate Veridata 23c on two Virtual Maschines running Oracle Database 19c on RedHat Enterprise Linux 8.10. On the first VM we install the Veridata 23c server and deploy an Veridata Agent. After that we install the Agent only software on the second VM and deploy the Veridata Agent.
Table of Contents
- Prepare the installation
- Install Oracle GoldenGate Veridata 23c (Server and Agent) on the first VM
- Configure Oracle GoldenGate Veridata 23c (Server and Agent) on the first VM
- Install Oracle GoldenGate Veridata 23c (Agent) on the second VM
- Deploy a Oracle GoldenGate Veridata Agent
- Basic Administration of Oracle GoldenGate Veridata
- Further information
Prepare the installation
First we need two Linux VMs each having one Oracle 19c Database. Take a look here and here on how to set them up in a Oracle VirtualBox environment. After that we can continue with:
Downloading the software
We need a JDK 17 for Linux x64 from here. Place the file on a location accessible from the VMs via /sw/ora_GoldenGate/jdk-17.0.13_linux-x64_bin.rpm. Oracle GoldenGate Veridata 23.1 for Linux x64 can be downloaded from Oracle. The file should be accessible via /sw/ora_GoldenGate/Veridata/OracleGoldenGateVeridata23.1.0.0.0/V1046346-01.zip.
Creating OS users and prepare directories and files
Run this on both VMs as the OS user root:
# create an Veridata OS user if it does not exist
id vdt >/dev/null 2>&1; if [[ $? -ne 0 ]] ; then
echo 'creating user vdt and group oinstall'
groupadd -g 2000 oinstall
useradd -u 2003 -g 2000 -G vboxsf vdt && echo 'vdt:changeme'|chpasswd
echo "vdt ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
echo "ORACLE_HOME=/u01/app/vdt/vdt23c
PATH=\$ORACLE_HOME/OPatch:\$ORACLE_HOME/bin:\$PATH
export ORACLE_HOME PATH" > ~vdt/vdt.env
cat << EOF >> ~vdt/vdt.env
show_agents() {
echo '=== Currently configured Agents: ==='
for i in \`ls /u01/app/vdt/|grep -v vdt23c\` ; do
port=\`cat /u01/app/vdt/\$i/agent.properties|grep ^server.port|awk -F\= {'print \$2'}\`
echo -n \$i'(port: '\$port'): '
netstat -an|grep LISTEN|grep -v LISTENING|grep \$port
done
echo -e '\n=== End ==='
}
EOF
chown vdt:oinstall ~vdt/vdt.env
echo "JAVA_HOME=/usr/lib/jvm/jdk-17.0.13-oracle-x64
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH" >> ~vdt/.bash_profile
else
echo 'user vdt already exists'
fi
# create OS directories
mkdir -p /u01/app/vdt/vdt23c
chown vdt:oinstall /u01 /u01/app /u01/app/vdt /u01/app/vdt/vdt23c
chmod 775 /u01 /u01/app && chmod 775 -R /u01/app/vdt
# extract the installer files if needed
su - vdt -c "[[ -d /sw/ora_GoldenGate/Veridata/OracleGoldenGateVeridata23.1.0.0.0/vdt ]] || (mkdir /sw/ora_GoldenGate/Veridata/OracleGoldenGateVeridata23.1.0.0.0/vdt && unzip -q /sw/ora_GoldenGate/Veridata/OracleGoldenGateVeridata23.1.0.0.0/V1046346-01.zip -d /sw/ora_GoldenGate/Veridata/OracleGoldenGateVeridata23.1.0.0.0/vdt)"
Install Oracle GoldenGate Veridata 23c (Server and Agent) on the first VM
Press 1 to perform a Server and Agent installation:
# install Veridata
(echo -e '\n============' && read -n1 -p 'Press 1 if you want to install the Veridata Server + Agent or 2 if you want to install the Veridata Agent only: ' sel &&\
if [[ $sel -eq 1 ]] ; then echo -e '\nInstalling Server and Agent' ; opt1=SERVERAGENT ; opt2=true ; else echo -e '\nInstalling Agent Only' ; opt1=AGENT ; opt2=false ; fi
cat << EOF > ~vdt/respvdt.rsp
oracle.install.responseFileVersion=/oracle/install/rspfmt_ogginstall_response_schema_v23_1_0
INSTALL_OPTION=$opt1
IS_NEWREPO=$opt2
SOFTWARE_LOCATION=/u01/app/vdt/vdt23c
INVENTORY_LOCATION=/u01/app/oraInventory
UNIX_GROUP_NAME=oinstall
EOF
chown vdt:oinstall ~vdt/respvdt.rsp
# install JDK 17
rpm -i /sw/ora_GoldenGate/jdk-17.0.13_linux-x64_bin.rpm
# start installer
su - vdt -c '. ~/vdt.env && /sw/ora_GoldenGate/Veridata/OracleGoldenGateVeridata23.1.0.0.0/vdt/fbo_oggvdt_linux_services_shiphome/Disk1/runInstaller -silent -responseFile /home/vdt/respvdt.rsp'
while [ `ps -eaf|grep 'oracle.installer'|grep -v grep|wc -l` -ne 0 ] ; do sleep 1 ; done && echo -e '\n'
# only needed if that is the first Oracle Product installed on this system, but otherwise doesn't hurt to run it
/u01/app/oraInventory/orainstRoot.sh)
Configure Oracle GoldenGate Veridata 23c (Server and Agent) on the first VM
To setup Veridata with https encryption we need to create a root CA and a server certificate as the user vdt as described here. After that you can run the following commands:
sn=`hostname|awk -F. {'print $1'}`
echo "oracle.install.responseFileVersion=/oracle/install/rspfmt_oggca_response_schema_v23_1_0
IS_NEW_MYSQL=true
NEW_MYSQL_ROOT_USERNAME=root
NEW_MYSQL_ROOT_PASSWORD=changeme
NEW_MYSQL_VERIDATA_USERNAME=veridata
NEW_MYSQL_VERIDATA_PASSWORD=changeme
SCHEMA_PREFIX=vdt23c
MIN_HEAP_SIZE=2g
MAX_HEAP_SIZE=7g
ADMINISTRATOR_USER=veridata
ADMINISTRATOR_PASSWORD=changeme
STRONG_PWD_POLICY_ENABLED=false
IS_SSL_ENABLED=true
IS_SELF_SIGNED_CERTIFICATE=false
IS_PEM_FILES=true
CERTIFICATE_LOCATION=/home/vdt/keys/$sn""_cert.pem
PRIVATE_KEY_LOCATION=/home/vdt/keys/$sn""_key.pem
CA_CERTIFICATE_LOCATION=/home/vdt/keys/ca_cert.pem
VERIDATA_PORT=8831" > ~vdt/respca.rsp && chown vdt:oinstall ~vdt/respca.rsp
# first we need to create the mysql repository db
/u01/app/vdt/vdt23c/script/vdtca/install_configure_mysql.sh
# now we start the Configuration Assistant
su - vdt -c '. ~/vdt.env && /u01/app/vdt/vdt23c/bin/vdtca.sh -silent -responseFile /home/vdt/respca.rsp'
while [ `ps -eaf|grep 'oracle.installer'|grep -v grep|wc -l` -ne 0 ] ; do sleep 1 ; done && echo -e '\n'
Install Oracle GoldenGate Veridata 23c (Agent) on the second VM
To perform the Agent only installation on the second VM run the script from here and select Option 2. No Configuration Assistant has to be run afterwards.
Deploy a Oracle GoldenGate Veridata Agent
Agents need to be deployed on both servers. The agent should always run on the host where the database is running. Although it is also possible (but not recommended) to install them on a remote host like the Veridata server.
# deploy and configure the agent
su - vdt -c ". vdt.env ; show_agents ; read -p 'Enter the name of the new agent (e.g. agent1): ' ag ; \
read -p 'Enter the Agent port number (e.g. 7861): ' nport ; \
/u01/app/vdt/vdt23c/agent/agent_config.sh /u01/app/vdt/\$ag ; \
cd /u01/app/vdt/\$ag && cp agent.properties.sample agent.properties ; \
sed -i s/'<server.port>'/\$nport/g agent.properties ; \
sed -i s/'#server.jdbcDriver='/'server.jdbcDriver='/g agent.properties ; \
sed -i s/'<database.url>'/'jdbc:oracle:thin:@dbhost.de:1521\/pdb1'/g agent.properties"
Basic Administration of Oracle GoldenGate Veridata
Accessing the web interface
You can login to the Web User Interface with a URL like https://lin1.fritz.box:8831 depending on the server. Use the Veridata Administrator Account to login.
Accounts created during the installation
Account Type | Username | Password |
Veridata Administrator (web UI) | veridata | changeme |
MySQL root user | root | changeme |
MySQL veridata user | veridata | changeme |
Start and stop of a Veridata Agent
You can start the agent with:
su - vdt -c ". vdt.env && show_agents ; read -p 'Enter the agent name to start (e.g. agent1): ' ag && /u01/app/vdt/\$ag/agent.sh start"
To stop the agent you can do:
su - vdt -c ". vdt.env && show_agents ; read -p 'Enter the agent name to stop (e.g. agent1): ' ag && /u01/app/vdt/\$ag/agent.sh stop"
Start and stop of the Veridata Server
If the Veridata server is stopped you can start it with (press Ctrl+C when prompted):
su - vdt -c '. vdt.env && cd /u01/app/vdt/vdt23c/bin && nohup ./run.sh repoStart &'
sleep 3
kill `ps -eaf|grep 'bash ./run.sh repoStart'|grep -v grep|grep -v grep|awk {'print $2'}`
su - vdt -c '. vdt.env && cd /u01/app/vdt/vdt23c/bin && echo changeme|./run.sh start'
Stop the Veridata server and the MySQL database with these commands:
su - vdt -c '. vdt.env && cd /u01/app/vdt/vdt23c/bin && ./run.sh stop ; ./run.sh repoStop'
Enter changeme as the mysql password
Further information
If you would like to install Oracle GoldenGate Veridata with a GUI (Oracle Universal Installer) you can do that with:
# as the vdt user start a X terminal
. ~/vdt.env && /sw/ora_GoldenGate/Veridata/OracleGoldenGateVeridata23.1.0.0.0/vdt/fbo_oggvdt_linux_services_shiphome/Disk1/runInstaller
To configure Veridata by using a GUI (Oracle Universal Installer) follow these steps:
# as the vdt user start a X terminal
# start the Veridata Configuration Assistant
. ~/vdt.env && vdtca.sh
Uninstall Oracle GoldenGate Veridata 23c
If you would like to uninstall GoldenGate Veridata 23c including the MySQL repository database you can do that:
su - vdt -c ". vdt.env &&
echo 'yes
root
changeme'|/u01/app/vdt/vdt23c/deinstall/deinstall.sh"
rm -rf /u01/app/vdt
userdel vdtrepouser ; groupdel vdtrepogroup
Leave a Reply