This section outlines the upgrade process for the Protegrity Teradata Data Warehouse Protector.
This is the multi-page printable view of this section. Click here to print.
Upgrading the Teradata Data Warehouse Protector
1 - Upgrading the Protector on Single Node
The Teradata Data Warehouse Protector build provides an automated script to manage the upgrade process. The master script internally calls the scripts to install and upgrade the components. The master script installs and upgrades the components in the following order:
- Log Forwarder
- RPAgent
- Policy Enforcement Point (Database Protector)
The master script is available in the directory where the installation files are extracted. It provides the following arguments:
install- installs the components in an interactive mode.upgrade- installs a newer version of the protector with minimal downtime.silent- installs the components in a non-interactive mode.install.ini- installs the components as per the parameters provided in the file.help- lists the arguments available for the script.
During the upgrade process, the master script:
- Verifies the existing configuration.
- Creates a backup of the existing configuration.
- Stops the required services.
- Drops the existing UDFs.
- Installs the new version.
- Starts the required services.
- Creates the new UDFs and retains the existing configuration.
In addition, the master script will rollback the upgrade process if any errors are encountered. The script will revert the changes and restore the previous working version of the Teradata Data Warehouse Protector.
Important: The automation script will be unable to handle the UDTs and Decimal objects. If UDTs and Decimal objects are present in the database, these must be handled manually.
Viewing the Arguments for the Script
- Log in to the server as the user with the required permissions.
- Navigate to the directory containing the extracted files and the installation scripts.
- To view the arguments, run the following command:
./Install_TeradataProtector_Linux_x64_<DBP_version>.sh --help - Press ENTER.
The script lists the available arguments.
Usage: ./Install_TeradataProtector_Linux_x64_<DBP_version>.sh [--install | --upgrade] [--silent] [--install-ini <file>] [--help] Options: --install Use this option when installing the solution for the first time on a machine/host. (i.e., there is no previous installation present) --upgrade Use this option when upgrading an existing installation on the machine/host. --install-ini <file> (Optional) Provide a path to an install.ini file for silent or pre-configured installations. This option works with --install only. It must not be used with --upgrade or --silent. You can pass this either as: --install-ini /path/to/install.ini or --install-ini=/path/to/install.ini Refer to the product documentation for details about the configuration options available in install.ini. The documentation describes all supported keys, required fields, and example configurations. --silent (Optional) Runs the installation/upgrade in silent mode with minimum interactive prompts. --help, -h Display this help message and exit.
Upgrading the Protector using the Interactive Mode
Note: For installation/upgrade using the automation script, the component will be installed/upgraded within a <DBP_version> folder under the specified directory.
- Log in to the server as the user with the required permissions.
- Navigate to the directory containing the extracted files and the installation scripts.
- To upgrade the protector, run the following command:
./Install_TeradataProtector_Linux_x64_<DBP_version>.sh --upgrade - Press ENTER.
The script performs pre-checks before starting the upgrade. The prompt to select the silent mode of installation appears.
2026-05-04 03:45:05 - [INFO] ======================================================================== 2026-05-04 03:45:05 - [INFO] Starting environment pre-checks before installation/upgrade 2026-05-04 03:45:05 - [INFO] ======================================================================== 2026-05-04 03:45:05 - [INFO] Prerequisites check passed: pcl and bteq commands are available on current/running node 2026-05-04 03:45:05 - [INFO] Checking Teradata PDE state on running node... 2026-05-04 03:45:05 - [INFO] PDE state check passed on running node: PDE state is RUN/STARTED 2026-05-04 03:45:05 - [INFO] Checking accessibility of all Teradata nodes... 2026-05-04 03:45:05 - [INFO] IMPORTANT: ALL nodes must be accessible - if even 1 node is down, installation will be aborted 2026-05-04 03:45:05 - [INFO] ========================================== 2026-05-04 03:45:05 - [INFO] Node accessibility check PASSED 2026-05-04 03:45:05 - [INFO] All 1 node(s) have connected <--------------------- localhost --------------------------------> td20sles15 2026-05-04 03:45:05 - [INFO] ========================================== 2026-05-04 03:45:05 - [INFO] ======================================================================== 2026-05-04 03:45:05 - [INFO] All environment pre-checks PASSED - proceeding with installation 2026-05-04 03:45:05 - [INFO] ======================================================================== 2026-05-04 03:45:05 - [INFO] If silent mode is selected, the default base directory (/opt/protegrity) will be used as the location of the existing installation for each component (Logforwarder, RPAgent and DatabaseProtector). Do you want silent installation? (yes/no) [no]: - To install the components using the interactive mode, type
no. - Press ENTER.
The prompt to enter the location of the existing installation appears.
Enter existing installation directories: Existing LogForwarder installation directory [/opt/protegrity]: - Enter the directory path where the existing version of the Log Forwarder is installed.
- Press ENTER.
The prompt to enter RPAgent installation directory appears.
Existing RPAgent installation directory [/opt/protegrity]: - Enter the directory path where the existing version of the RPAgent is installed.
- Press ENTER.
The prompt to enter the Database Protector installation directory appears.
Existing DatabaseProtector installation directory [/opt/protegrity]: - Enter the directory path where the existing version of the Database Protector is installed.
- Press ENTER.
The prompt to select a single installation directory for the components appears.
Do you want to install the new LogForwarder, RPAgent, and DatabaseProtector together in a single directory? (yes/no) [no]: - To install the new components in a single directory, type
yes. - Press ENTER.
The prompt to enter the new installation directory appears.
Enter new installation directory [/opt/protegrity]: - Enter the location to install the components.
- Press ENTER.
The prompt to confirm the presence of decimal UDFs appears.
2026-05-04 03:45:23 - [INFO] Verifying previous installation directories for all components... 2026-05-04 03:45:23 - [INFO] Existing LogForwarder directory: /opt/protegrity/<DBP_version>/logforwarder 2026-05-04 03:45:23 - [INFO] Existing RPAgent directory: /opt/protegrity/<DBP_version>/rpagent 2026-05-04 03:45:23 - [INFO] Existing DatabaseProtector directory: /opt/protegrity/<DBP_version>/databaseprotector 2026-05-04 03:45:23 - [INFO] All existing component directories verified successfully. 2026-05-04 03:45:40 - [INFO] Checking for Protegrity UDT in previous installation... 2026-05-04 03:45:40 - [INFO] No UDT PLM file found at expected path. Checking Teradata libraries... 2026-05-04 03:45:40 - [INFO] No Teradata library links to pepteradataudt. UDT not active. 2026-05-04 03:45:40 - [INFO] No active Protegrity UDT detected. Proceeding with upgrade. 2026-05-04 03:45:40 - [INFO] Protegrity Decimal UDF objects are not supported by this script Have you created Protegrity Decimal UDF objects in your previous installation? (yes/no) [no]: - To confirm that the previous installation does not contain any decimal UDF, type
no. - Press ENTER.
The script prompts to create the UDFs. The prompt to enter the database credentials appears.
2026-05-04 03:45:47 - [INFO] No Protegrity Decimal UDF objects present. Proceeding with upgrade. Do you want to continue and create UDFs? To create the UDFs, provide the database credentials (yes/no) [no]: - To create the UDFs, type
yes. - Press ENTER.
The prompt to enter the database username appears.
Enter Teradata database username: - Enter the username.
- Press ENTER.
The prompt to enter the database password appears.
Enter Teradata database user's password: - Enter the password.
- Press ENTER.
The prompt to enter the database name to install the UDF appears.
Enter name of database where the UDFs will be installed [PROTEGRITY]: - Enter the database name to install the UDFs.
- Press ENTER.
The prompt to specify the maximum size of varchar to be allocated by the UDFs appears.
Enter the maximum size of varchar to be allocated by the UDFs [500]: - Enter the maximum size of varchar to be allocated by the UDFs.
- Press ENTER.
The script validates the database and lists the configuration. The prompt to verify the configuration appears.
2026-05-04 03:46:02 - [INFO] Validating database ... 2026-05-04 03:46:23 - [INFO] Database validated successfully 2026-05-04 03:46:23 - [INFO] ************************************************************************** 2026-05-04 03:46:23 - [INFO] Upgrade will be done with following configuration: 2026-05-04 03:46:23 - [INFO] Mode: upgrade 2026-05-04 03:46:23 - [INFO] Existing Logforwarder Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 03:46:23 - [INFO] Existing RPAgent Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 03:46:23 - [INFO] Existing DatabaseProtector Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 03:46:23 - [INFO] New Logforwarder Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 03:46:23 - [INFO] New RPAgent Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 03:46:23 - [INFO] New DatabaseProtector Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 03:46:23 - [INFO] Audit Store Endpoints: <IP_Address>:9200 <IP_Address>:9200 2026-05-04 03:46:23 - [INFO] Upstream (ESA) Hostname or IP Address for RPAgent: <ESA_Hostname> 2026-05-04 03:46:23 - [INFO] Upstream (ESA) Port for RPAgent: 25400 (Default) 2026-05-04 03:46:23 - [INFO] This is an upgrade. 2026-05-04 03:46:23 - [INFO] Previous installations will be backed up before upgrade. 2026-05-04 03:46:23 - [INFO] Existing Logforwarder and RPAgent configurations will be retained 2026-05-04 03:46:23 - [INFO] ************************************************************************** 2026-05-04 03:46:23 - [WARN] ************************************************************************** 2026-05-04 03:46:23 - [WARN] IMPORTANT: Any queries currently running may be impacted during upgrade. 2026-05-04 03:46:23 - [WARN] It is recommended to perform the upgrade during a maintenance window. 2026-05-04 03:46:23 - [WARN] ************************************************************************** 2026-05-04 03:46:23 - [INFO] Please verify the above configuration before proceeding. Do you want to continue? (yes/no) [no]: - To proceed with the configuration, type
yes. - Press ENTER.
The script drops the existing UDFs, creates the new ones, and completes the upgrade.
2026-05-04 03:46:28 - [INFO] Continuing with upgrade... 2026-05-04 03:46:28 - [INFO] Backing up /opt/protegrity/<DBP_version>/logforwarder to /opt/protegrity/<DBP_version>/logforwarder_backup_<Timestamp>... 2026-05-04 03:46:29 - [INFO] Backup of /opt/protegrity/<DBP_version>/logforwarder completed successfully 2026-05-04 03:46:29 - [INFO] Backing up /opt/protegrity/<DBP_version>/rpagent to /opt/protegrity/<DBP_version>/rpagent_backup_<Timestamp>... 2026-05-04 03:46:29 - [INFO] Backup of /opt/protegrity/<DBP_version>/rpagent completed successfully 2026-05-04 03:46:29 - [INFO] Backing up /opt/protegrity/<DBP_version>/databaseprotector to /opt/protegrity/<DBP_version>/databaseprotector_backup_<Timestamp>... 2026-05-04 03:46:29 - [INFO] Backup of /opt/protegrity/<DBP_version>/databaseprotector completed successfully 2026-05-04 03:46:29 - [INFO] Backing up /etc/protegrity to /etc/protegrity_backup_<Timestamp>... 2026-05-04 03:46:29 - [INFO] Backup of /etc/protegrity completed successfully 2026-05-04 03:46:29 - [INFO] Installing/Upgrading LOGFORWARDER... 2026-05-04 03:46:29 - [INFO] Executing ./LogforwarderSetup_Linux_x64_<DBP_version>.sh... Unpacking... Extracting files... Protegrity Log Forwarder installed in /opt/protegrity/<DBP_version>/logforwarder. 2026-05-04 03:46:30 - [INFO] Retaining existing Logforwarder configuration... 2026-05-04 03:46:30 - [INFO] Logforwarder configuration retained successfully. 2026-05-04 03:46:30 - [INFO] ./LogforwarderSetup_Linux_x64_<DBP_version>.sh completed successfully. 2026-05-04 03:46:30 - [INFO] Installing/Upgrading RPAGENT... 2026-05-04 03:46:30 - [INFO] Executing ./RPAgentSetup_Linux_x64_<DBP_version>.sh... Unpacking... Extracting files... Since --nocert was provided certificates are not downloaded automatically. Protegrity RPAgent installed in /opt/protegrity/<DBP_version>/rpagent. 2026-05-04 03:46:30 - [INFO] Retaining existing RPAgent configuration... 2026-05-04 03:46:30 - [INFO] RPAgent configuration retained successfully. 2026-05-04 03:46:30 - [INFO] ./RPAgentSetup_Linux_x64_<DBP_version>.sh completed successfully. 2026-05-04 03:46:30 - [INFO] Old Logforwarder port: 15780 ? New Logforwarder port: 15781 2026-05-04 03:46:30 - [INFO] Configuring new Logforwarder to listen on port 15781 2026-05-04 03:46:30 - [INFO] Logforwarder listen port updated to 15781 in /opt/protegrity/<DBP_version>/logforwarder/data/config.d/in_tcp.conf 2026-05-04 03:46:30 - [INFO] Configuring RPAgent to send logs to Logforwarder port 15781 2026-05-04 03:46:30 - [INFO] RPAgent rpagent.cfg updated to use Logforwarder port 15781 2026-05-04 03:46:30 - [INFO] Copying Logforwarder and RPAgent to all nodes in the Teradata cluster 2026-05-04 03:46:30 - [INFO] Copying Logforwarder and RPAgent components to all nodes 2026-05-04 03:46:30 - [INFO] Creating installation directories on all nodes if not present All 1 node(s) have connected All 1 node(s) have connected All 1 node(s) have connected All 1 node(s) have connected 2026-05-04 03:46:31 - [INFO] Copying Logforwarder directory /opt/protegrity/<DBP_version>/logforwarder to all nodes All 1 node(s) have connected localhost:1022: send completed: 57934861 bytes received (10 files/7 directories) All 1 node(s) have connected All 1 node(s) have connected 2026-05-04 03:46:34 - [INFO] Logforwarder successfully copied to all nodes 2026-05-04 03:46:34 - [INFO] Copying RPAgent directory /opt/protegrity/<DBP_version>/rpagent to all nodes All 1 node(s) have connected localhost:1022: send completed: 14787481 bytes received (10 files/3 directories) All 1 node(s) have connected All 1 node(s) have connected 2026-05-04 03:46:34 - [INFO] RPAgent successfully copied to all nodes 2026-05-04 03:46:34 - [INFO] Logforwarder and RPAgent successfully copied to all nodes 2026-05-04 03:46:34 - [INFO] Starting new Logforwarder on all nodes All 1 node(s) have connected <--------------------- localhost --------------------------------> Fluent Bit v4.2.2-1.5.1+0.gdfa6.fb-4.2 * Copyright (C) 2015-2025 The Fluent Bit Authors * Fluent Bit is a CNCF graduated project under the Fluent organization * https://fluentbit.io ______ _ _ ______ _ _ ___ _____ | ___| | | | | ___ (_) | / | / __ \ | |_ | |_ _ ___ _ __ | |_ | |_/ /_| |_ __ __/ /| | `' / /' | _| | | | | |/ _ \ '_ \| __| | ___ \ | __| \ \ / / /_| | / / | | | | |_| | __/ | | | |_ | |_/ / | |_ \ V /\___ |_./ /___ \_| |_|\__,_|\___|_| |_|\__| \____/|_|\__| \_/ |_(_)_____/ Fluent Bit v4.2 Direct Routes Ahead Celebrating 10 Years of Open, Fluent Innovation! [2026/05/04 03:46:35.331405405] [ info] switching to background mode (PID=6571) Log Forwarder started, PID (6571) written to PID file /opt/protegrity/<DBP_version>/logforwarder/bin/fluent-bit.pid 2026-05-04 03:46:37 - [INFO] Preparing Database Protector installation... 2026-05-04 03:46:37 - [INFO] In-place upgrade detected - backup at /opt/protegrity/<DBP_version>/databaseprotector_backup_<Timestamp> will be used for SQL scripts if needed 2026-05-04 03:46:37 - [INFO] Installing/Upgrading DBP... 2026-05-04 03:46:37 - [INFO] Executing ./PepTeradataSetup_Linux_x64_<DBP_version>.sh... ***************************************************** Welcome to the Database Protector Setup Wizard ***************************************************** This will install the teradata objects on your computer Do you want to continue? [yes or no] Enter installation directory. A new directory will be created in the installation directory. [/opt/protegrity]: Unpacking... Extracting files... Enter name of database where the UDFs will be installed. [PROTEGRITY]: Enter maxmimum size of varchar to be allocated by the UDFs. NOTE: This is the maximum varchar size allocated by the UDFs for latin as well as unicode character set. Larger size will affect the performance !!! Some applications can also have issues with larger size, such as BTEQ, SQL Assistant. [500]: ***********BUFFER LENGTH INITIALIZATION************** UDF VARCHAR MAX INPUT BUFFER LENGTH (TOKENIZATION) : 500 Latin characters UDF VARCHAR MAX OUTPUT BUFFER LENGTH (TOKENIZATION) : 676 Latin characters UDF VARCHAR MAX INPUT BUFFER LENGTH (ENCRYPTION) : 500 Latin characters UDF VARCHAR MAX OUTPUT BUFFER LENGTH (ENCRYPTION) : 538 Bytes UDF VARCHAR_UNICODE MAX INPUT BUFFER LENGTH (TOKENIZATION) : 500 UNICODE characters UDF VARCHAR_UNICODE MAX OUTPUT BUFFER LENGTH (TOKENIZATION) : 1356 UNICODE characters UDF VARCHAR_UNICODE MAX INPUT BUFFER LENGTH (ENCRYPTION) : 500 UNICODE characters UDF VARCHAR_UNICODE MAX OUTPUT BUFFER LENGTH (ENCRYPTION) : 1038 Bytes teradata objects installed in /opt/protegrity/<DBP_version>/databaseprotector/teradata. 2026-05-04 03:46:38 - [INFO] Retaining existing Database Protector configuration... 2026-05-04 03:46:39 - [INFO] Database Protector configuration retained successfully. 2026-05-04 03:46:39 - [INFO] ./PepTeradataSetup_Linux_x64_<DBP_version>.sh completed successfully. 2026-05-04 03:46:39 - [INFO] Configuring DBP to send logs to Logforwarder port 15781 2026-05-04 03:46:39 - [INFO] DBP config.ini updated to use Logforwarder port 15781 2026-05-04 03:46:39 - [INFO] Copying DatabaseProtector to all nodes All 1 node(s) have connected localhost:1022: send completed: 8926088 bytes received (16 files/5 directories) All 1 node(s) have connected All 1 node(s) have connected 2026-05-04 03:46:40 - [INFO] Setting DatabaseProtector ownership (tdatuser:tdtrusted) on all nodes All 1 node(s) have connected 2026-05-04 03:46:40 - [INFO] DatabaseProtector successfully copied to all nodes 2026-05-04 03:46:40 - [INFO] Synchronizing /etc/protegrity to all nodes All 1 node(s) have connected All 1 node(s) have connected localhost:1022: send completed: 1157 bytes received (1 files/1 directories) All 1 node(s) have connected All 1 node(s) have connected All 1 node(s) have connected 2026-05-04 03:46:41 - [INFO] User configuration directory successfully synchronized to all nodes 2026-05-04 03:46:41 - [INFO] Dropping existing UDFs (database operation on current node only - shared across all nodes) 2026-05-04 03:46:41 - [INFO] In-place upgrade: Using SQL scripts from backup: /opt/protegrity/<DBP_version>/databaseprotector_backup_<Timestamp>/teradata/sqlscripts BTEQ 20.00.00.05 (64-bit) Mon May 4 03:47:02 2026 PID: 9325 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/<database_user_name>, *** Logon successfully completed. *** Teradata Database Release is 20.00.22.31 *** Teradata Database Version is 20.00.22.31 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 20 seconds. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/<DBP_version>/databaseprotector_backup_<Timestamp> /teradata/sqlscripts/dropobjects.sql; +---------+---------+---------+---------+---------+---------+---------+---- 2026-05-04 03:47:48 - [INFO] Main UDFs dropped successfully BTEQ 20.00.00.05 (64-bit) Mon May 4 03:47:48 2026 PID: 9877 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/<database_user_name>, *** Logon successfully completed. *** Teradata Database Release is 20.00.22.31 *** Teradata Database Version is 20.00.22.31 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 20 seconds. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/<DBP_version>/databaseprotector_backup_<Timestamp> /teradata/sqlscripts/dropvarcharunicode.sql; +---------+---------+---------+---------+---------+---------+---------+---- 2026-05-04 03:48:10 - [INFO] Varchar unicode UDFs dropped successfully 2026-05-04 03:48:11 - [INFO] Stopping existing RPAgent on all nodes Stopping rpagent 2026-05-04 03:48:12 - [INFO] Starting new RPAgent on all nodes Starting rpagent 2026-05-04 03:48:12 - [INFO] Successfully launched new RPAgent on all nodes 2026-05-04 03:48:12 - [INFO] Creating new UDFs (database operation on current node only - shared across all nodes) BTEQ 20.00.00.05 (64-bit) Mon May 4 03:48:12 2026 PID: 9988 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/<database_user_name>, *** Logon successfully completed. *** Teradata Database Release is 20.00.22.31 *** Teradata Database Version is 20.00.22.31 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 20 seconds. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/<DBP_version>/databaseprotector/teradata/sqlscripts/c reateobjects.sql; +---------+---------+---------+---------+---------+---------+---------+---- 2026-05-04 03:49:04 - [INFO] Creating varcharunicode UDFs BTEQ 20.00.00.05 (64-bit) Mon May 4 03:49:04 2026 PID: 10724 2026-05-04 03:49:28 - [INFO] Varcharunicode UDFs created successfully 2026-05-04 03:49:28 - [INFO] Testing UDFs BTEQ 20.00.00.05 (64-bit) Mon May 4 03:49:28 2026 PID: 10805 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/<database_user_name>, *** Logon successfully completed. *** Teradata Database Release is 20.00.22.31 *** Teradata Database Version is 20.00.22.31 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 20 seconds. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- select pty_getversion(); *** Query completed. One row found. One column returned. *** Total elapsed time was 1 second. pty_getversion() --------------------------------------------------------------------------- <DBP_version> +---------+---------+---------+---------+---------+---------+---------+---- .logoff *** You are now logged off from the <database_user_name>. +---------+---------+---------+---------+---------+---------+---------+---- .quit *** Exiting BTEQ... *** RC (return code) = 0 2026-05-04 03:49:49 - [INFO] Stopping existing Logforwarder on all nodes All 1 node(s) have connected <--------------------- localhost --------------------------------> Stopping Log Forwarder with PID: 6571 Please Wait 2026-05-04 03:49:54 - [INFO] Removing previous installation directories 2026-05-04 03:49:54 - [INFO] Pruning old Teradata library versions on all nodes 2026-05-04 03:49:54 - [WARN] Installed version directory not found: /opt/protegrity/<DBP_version>/databaseprotector/teradata/lib/<DBP_version> 2026-05-04 03:49:54 - [INFO] Synchronizing pruned Database Protector directory to all nodes All 1 node(s) have connected localhost:1022: send completed: 8926088 bytes received (16 files/5 directories) All 1 node(s) have connected All 1 node(s) have connected 2026-05-04 03:49:55 - [INFO] User configuration backup removed: /etc/protegrity_backup_<Timestamp> 2026-05-04 03:49:55 - [INFO] Upgrade successful. 2026-05-04 03:49:55 - [INFO] All components upgraded successfully. 2026-05-04 03:49:55 - [INFO] IMPORTANT: This script doesn't handle Protegrity UDT, it must be handled manually. Refer to product documentation. 2026-05-04 03:49:55 - [INFO] IMPORTANT: This script doesn't handle Protegrity Decimal UDF objects, it must be handled manually. Refer to product documentation.
Upgrading the Protector using the Silent Mode
Note: For installation/upgrade using the automation script, the component will be installed/upgraded within a <DBP_version> folder under the specified directory.
- Log in to the server as the user with the required permissions.
- Navigate to the directory containing the extracted files and the installation scripts.
- To upgrade the protector, run the following command:
./Install_TeradataProtector_Linux_x64_<DBP_version>.sh --upgrade - Press ENTER.
The script performs pre-checks before starting the upgrade. The prompt to select the silent mode of installation appears.
2026-05-04 05:09:26 - [INFO] ======================================================================== 2026-05-04 05:09:26 - [INFO] Starting environment pre-checks before installation/upgrade 2026-05-04 05:09:26 - [INFO] ======================================================================== 2026-05-04 05:09:26 - [INFO] Prerequisites check passed: pcl and bteq commands are available on current/running node 2026-05-04 05:09:26 - [INFO] Checking Teradata PDE state on running node... 2026-05-04 05:09:26 - [INFO] PDE state check passed on running node: PDE state is RUN/STARTED 2026-05-04 05:09:26 - [INFO] Checking accessibility of all Teradata nodes... 2026-05-04 05:09:26 - [INFO] IMPORTANT: ALL nodes must be accessible - if even 1 node is down, installation will be aborted 2026-05-04 05:09:26 - [INFO] ========================================== 2026-05-04 05:09:26 - [INFO] Node accessibility check PASSED 2026-05-04 05:09:26 - [INFO] All 1 node(s) have connected <--------------------- localhost --------------------------------> td20sles15 2026-05-04 05:09:26 - [INFO] ========================================== 2026-05-04 05:09:27 - [INFO] ======================================================================== 2026-05-04 05:09:27 - [INFO] All environment pre-checks PASSED - proceeding with installation 2026-05-04 05:09:27 - [INFO] ======================================================================== 2026-05-04 05:09:27 - [INFO] If silent mode is selected, the default base directory (/opt/protegrity) will be used as the location of the existing installation for each component (Logforwarder, RPAgent and DatabaseProtector). Do you want silent installation? (yes/no) [no]: - To install the components using the silent mode, type
yes. - Press ENTER.
The prompt to confirm the presence of decimal UDF installation appears.
2026-05-04 05:09:30 - [INFO] You have chosen silent mode. Therefore, /opt/protegrity is considered as base directory for new installation. 2026-05-04 05:09:31 - [INFO] This is an upgrade and you have chosen silent mode. Therefore, /opt/protegrity is considered as base directory for existing installation. 2026-05-04 05:09:31 - [INFO] Verifying previous installation directories for all components... 2026-05-04 05:09:31 - [INFO] Existing LogForwarder directory: /opt/protegrity/<DBP_version>/logforwarder 2026-05-04 05:09:31 - [INFO] Existing RPAgent directory: /opt/protegrity/<DBP_version>/rpagent 2026-05-04 05:09:31 - [INFO] Existing DatabaseProtector directory: /opt/protegrity/<DBP_version>/databaseprotector 2026-05-04 05:09:31 - [INFO] All existing component directories verified successfully. 2026-05-04 05:09:31 - [INFO] Checking for Protegrity UDT in previous installation... 2026-05-04 05:09:31 - [INFO] No UDT PLM file found at expected path. Checking Teradata libraries... 2026-05-04 05:09:31 - [INFO] No Teradata library links to pepteradataudt. UDT not active. 2026-05-04 05:09:31 - [INFO] No active Protegrity UDT detected. Proceeding with upgrade. 2026-05-04 05:09:31 - [INFO] Protegrity Decimal UDF objects are not supported by this script Have you created Protegrity Decimal UDF objects in your previous installation? (yes/no) [no]: - To confirm that the previous installation does not contain decimal UDFs, type
no. - Press ENTER.
The script prompts to create the UDFs. The prompt to enter the database credentials appears.
2026-05-04 05:09:35 - [INFO] No Protegrity Decimal UDF objects present. Proceeding with upgrade. Do you want to continue and create UDFs? To create the UDFs, provide the database credentials (yes/no) [no]: - To create the UDFs, type
yes. - Press ENTER.
The prompt to enter the database username appears.
Enter Teradata database username: - Enter the username.
- Press ENTER.
The prompt to enter the database password appears.
Enter Teradata database user's password: - Enter the password.
The script lists the current configuration and the prompt to proceed with the configuration appears.
2026-05-04 05:09:44 - [INFO] Silent upgrade: Using previous database name to install the UDFs: <database_name> 2026-05-04 05:09:44 - [INFO] Silent upgrade: Using previous maximum size of varchar to be allocated by the UDFs: 500 2026-05-04 05:09:44 - [INFO] Validating database ... 2026-05-04 05:10:04 - [INFO] Database validated successfully 2026-05-04 05:10:04 - [INFO] ************************************************************************** 2026-05-04 05:10:04 - [INFO] Upgrade will be done with following configuration: 2026-05-04 05:10:04 - [INFO] Mode: upgrade 2026-05-04 05:10:04 - [INFO] Existing Logforwarder Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 05:10:04 - [INFO] Existing RPAgent Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 05:10:04 - [INFO] Existing DatabaseProtector Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 05:10:04 - [INFO] New Logforwarder Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 05:10:04 - [INFO] New RPAgent Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 05:10:04 - [INFO] New DatabaseProtector Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 05:10:04 - [INFO] Audit Store Endpoints: <IP_Address>:9200 <IP_Address>:9200 2026-05-04 05:10:04 - [INFO] Upstream (ESA) Hostname or IP Address for RPAgent: <ESA_Hostname> 2026-05-04 05:10:04 - [INFO] Upstream (ESA) Port for RPAgent: 25400 (Default) 2026-05-04 05:10:04 - [INFO] This is an upgrade. 2026-05-04 05:10:04 - [INFO] Previous installations will be backed up before upgrade. 2026-05-04 05:10:04 - [INFO] Existing Logforwarder and RPAgent configurations will be retained 2026-05-04 05:10:04 - [INFO] ************************************************************************** 2026-05-04 05:10:04 - [WARN] ************************************************************************** 2026-05-04 05:10:04 - [WARN] IMPORTANT: Any queries currently running may be impacted during upgrade. 2026-05-04 05:10:04 - [WARN] It is recommended to perform the upgrade during a maintenance window. 2026-05-04 05:10:04 - [WARN] ************************************************************************** 2026-05-04 05:10:04 - [INFO] Please verify the above configuration before proceeding. Do you want to continue? (yes/no) [no]: - To upgrade the protector using the configuration, type
yes. - Press ENTER.
The script upgrades the Log Forwarder, RPAgent, the protector, and the UDFs and completes the installation.
2026-05-04 05:10:13 - [INFO] Continuing with upgrade... 2026-05-04 05:10:13 - [INFO] Backing up /opt/protegrity/<DBP_version>/logforwarder to /opt/protegrity/<DBP_version>/logforwarder_backup_<timestamp>... 2026-05-04 05:10:14 - [INFO] Backup of /opt/protegrity/<DBP_version>/logforwarder completed successfully 2026-05-04 05:10:14 - [INFO] Backing up /opt/protegrity/<DBP_version>/rpagent to /opt/protegrity/<DBP_version>/rpagent_backup_<timestamp>... 2026-05-04 05:10:14 - [INFO] Backup of /opt/protegrity/<DBP_version>/rpagent completed successfully 2026-05-04 05:10:14 - [INFO] Backing up /opt/protegrity/<DBP_version>/databaseprotector to /opt/protegrity/<DBP_version>/databaseprotector_backup_<timestamp>... 2026-05-04 05:10:14 - [INFO] Backup of /opt/protegrity/<DBP_version>/databaseprotector completed successfully 2026-05-04 05:10:14 - [INFO] Backing up /etc/protegrity to /etc/protegrity_backup_<timestamp>... 2026-05-04 05:10:14 - [INFO] Backup of /etc/protegrity completed successfully 2026-05-04 05:10:14 - [INFO] Installing/Upgrading LOGFORWARDER... 2026-05-04 05:10:14 - [INFO] Executing ./LogforwarderSetup_Linux_x64_<DBP_version>.sh... Unpacking... Extracting files... Protegrity Log Forwarder installed in /opt/protegrity/<DBP_version>/logforwarder. 2026-05-04 05:10:15 - [INFO] Retaining existing Logforwarder configuration... 2026-05-04 05:10:15 - [INFO] Logforwarder configuration retained successfully. 2026-05-04 05:10:15 - [INFO] ./LogforwarderSetup_Linux_x64_<DBP_version>.sh completed successfully. 2026-05-04 05:10:15 - [INFO] Installing/Upgrading RPAGENT... 2026-05-04 05:10:15 - [INFO] Executing ./RPAgentSetup_Linux_x64_<DBP_version>.sh... Unpacking... Extracting files... Since --nocert was provided certificates are not downloaded automatically. Protegrity RPAgent installed in /opt/protegrity/<DBP_version>/rpagent. 2026-05-04 05:10:15 - [INFO] Retaining existing RPAgent configuration... 2026-05-04 05:10:15 - [INFO] RPAgent configuration retained successfully. 2026-05-04 05:10:15 - [INFO] ./RPAgentSetup_Linux_x64_<DBP_version>.sh completed successfully. 2026-05-04 05:10:15 - [INFO] Old Logforwarder port: 15780 ? New Logforwarder port: 15781 2026-05-04 05:10:15 - [INFO] Configuring new Logforwarder to listen on port 15781 2026-05-04 05:10:15 - [INFO] Logforwarder listen port updated to 15781 in /opt/protegrity/<DBP_version>/logforwarder/data/config.d/in_tcp.conf 2026-05-04 05:10:15 - [INFO] Configuring RPAgent to send logs to Logforwarder port 15781 2026-05-04 05:10:15 - [INFO] RPAgent rpagent.cfg updated to use Logforwarder port 15781 2026-05-04 05:10:15 - [INFO] Copying Logforwarder and RPAgent to all nodes in the Teradata cluster 2026-05-04 05:10:15 - [INFO] Copying Logforwarder and RPAgent components to all nodes 2026-05-04 05:10:15 - [INFO] Creating installation directories on all nodes if not present All 1 node(s) have connected All 1 node(s) have connected All 1 node(s) have connected All 1 node(s) have connected 2026-05-04 05:10:16 - [INFO] Copying Logforwarder directory /opt/protegrity/<DBP_version>/logforwarder to all nodes All 1 node(s) have connected localhost:1022: send completed: 57934861 bytes received (10 files/7 directories) All 1 node(s) have connected All 1 node(s) have connected 2026-05-04 05:10:18 - [INFO] Logforwarder successfully copied to all nodes 2026-05-04 05:10:18 - [INFO] Copying RPAgent directory /opt/protegrity/<DBP_version>/rpagent to all nodes All 1 node(s) have connected localhost:1022: send completed: 14787482 bytes received (10 files/3 directories) All 1 node(s) have connected All 1 node(s) have connected 2026-05-04 05:10:19 - [INFO] RPAgent successfully copied to all nodes 2026-05-04 05:10:19 - [INFO] Logforwarder and RPAgent successfully copied to all nodes 2026-05-04 05:10:19 - [INFO] Starting new Logforwarder on all nodes All 1 node(s) have connected <--------------------- localhost --------------------------------> Fluent Bit v4.2.2-1.5.1+0.gdfa6.fb-4.2 * Copyright (C) 2015-2025 The Fluent Bit Authors * Fluent Bit is a CNCF graduated project under the Fluent organization * https://fluentbit.io ______ _ _ ______ _ _ ___ _____ | ___| | | | | ___ (_) | / | / __ \ | |_ | |_ _ ___ _ __ | |_ | |_/ /_| |_ __ __/ /| | `' / /' | _| | | | | |/ _ \ '_ \| __| | ___ \ | __| \ \ / / /_| | / / | | | | |_| | __/ | | | |_ | |_/ / | |_ \ V /\___ |_./ /___ \_| |_|\__,_|\___|_| |_|\__| \____/|_|\__| \_/ |_(_)_____/ Fluent Bit v4.2 Direct Routes Ahead Celebrating 10 Years of Open, Fluent Innovation! [2026/05/04 05:10:19.748329868] [ info] switching to background mode (PID=23737) Log Forwarder started, PID (23737) written to PID file /opt/protegrity/<DBP_version>/logforwarder/bin/fluent-bit.pid 2026-05-04 05:10:21 - [INFO] Preparing Database Protector installation... 2026-05-04 05:10:21 - [INFO] In-place upgrade detected - backup at /opt/protegrity/<DBP_version>/databaseprotector_backup_<timestamp> will be used for SQL scripts if needed 2026-05-04 05:10:21 - [INFO] Installing/Upgrading DBP... 2026-05-04 05:10:21 - [INFO] Executing ./PepTeradataSetup_Linux_x64_<DBP_version>.sh... ***************************************************** Welcome to the Database Protector Setup Wizard ***************************************************** This will install the teradata objects on your computer Do you want to continue? [yes or no] Enter installation directory. A new directory will be created in the installation directory. [/opt/protegrity]: Unpacking... Extracting files... Enter name of database where the UDFs will be installed. [PROTEGRITY]: Enter maxmimum size of varchar to be allocated by the UDFs. NOTE: This is the maximum varchar size allocated by the UDFs for latin as well as unicode character set. Larger size will affect the performance !!! Some applications can also have issues with larger size, such as BTEQ, SQL Assistant. [500]: ***********BUFFER LENGTH INITIALIZATION************** UDF VARCHAR MAX INPUT BUFFER LENGTH (TOKENIZATION) : 500 Latin characters UDF VARCHAR MAX OUTPUT BUFFER LENGTH (TOKENIZATION) : 676 Latin characters UDF VARCHAR MAX INPUT BUFFER LENGTH (ENCRYPTION) : 500 Latin characters UDF VARCHAR MAX OUTPUT BUFFER LENGTH (ENCRYPTION) : 538 Bytes UDF VARCHAR_UNICODE MAX INPUT BUFFER LENGTH (TOKENIZATION) : 500 UNICODE characters UDF VARCHAR_UNICODE MAX OUTPUT BUFFER LENGTH (TOKENIZATION) : 1356 UNICODE characters UDF VARCHAR_UNICODE MAX INPUT BUFFER LENGTH (ENCRYPTION) : 500 UNICODE characters UDF VARCHAR_UNICODE MAX OUTPUT BUFFER LENGTH (ENCRYPTION) : 1038 Bytes teradata objects installed in /opt/protegrity/<DBP_version>/databaseprotector/teradata. 2026-05-04 05:10:23 - [INFO] Retaining existing Database Protector configuration... 2026-05-04 05:10:23 - [INFO] Database Protector configuration retained successfully. 2026-05-04 05:10:23 - [INFO] ./PepTeradataSetup_Linux_x64_<DBP_version>.sh completed successfully. 2026-05-04 05:10:23 - [INFO] Configuring DBP to send logs to Logforwarder port 15781 2026-05-04 05:10:23 - [INFO] DBP config.ini updated to use Logforwarder port 15781 2026-05-04 05:10:23 - [INFO] Copying DatabaseProtector to all nodes All 1 node(s) have connected localhost:1022: send completed: 8926088 bytes received (16 files/5 directories) All 1 node(s) have connected All 1 node(s) have connected 2026-05-04 05:10:24 - [INFO] Setting DatabaseProtector ownership (tdatuser:tdtrusted) on all nodes All 1 node(s) have connected 2026-05-04 05:10:24 - [INFO] DatabaseProtector successfully copied to all nodes 2026-05-04 05:10:24 - [INFO] Synchronizing /etc/protegrity to all nodes All 1 node(s) have connected All 1 node(s) have connected localhost:1022: send completed: 1157 bytes received (1 files/1 directories) All 1 node(s) have connected All 1 node(s) have connected All 1 node(s) have connected 2026-05-04 05:10:25 - [INFO] User configuration directory successfully synchronized to all nodes 2026-05-04 05:10:25 - [INFO] Dropping existing UDFs (database operation on current node only - shared across all nodes) 2026-05-04 05:10:25 - [INFO] In-place upgrade: Using SQL scripts from backup: /opt/protegrity/<DBP_version>/databaseprotector_backup_<timestamp>/teradata/sqlscripts BTEQ 20.00.00.05 (64-bit) Mon May 4 05:10:46 2026 PID: 25486 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/<database_user_name>, *** Logon successfully completed. *** Teradata Database Release is 20.00.22.31 *** Teradata Database Version is 20.00.22.31 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 20 seconds. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/<DBP_version>/databaseprotector_backup_<timestamp> /teradata/sqlscripts/dropobjects.sql; +---------+---------+---------+---------+---------+---------+---------+---- +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/<DBP_version>/databaseprotector_backup_<timestamp> /teradata/sqlscripts/dropvarcharunicode.sql; +---------+---------+---------+---------+---------+---------+---------+---- +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/<DBP_version>/databaseprotector/teradata/sqlscripts/c reateobjects.sql; +---------+---------+---------+---------+---------+---------+---------+---- --------------------------------------------------------------------- -- Protegrity User Defined Functions. -- Copyright (c) 2026 Protegrity USA, Inc. All rights reserved -- -- This script should be run in BTEQ --------------------------------------------------------------------- DATABASE <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE != 0 THEN .QUIT 99 +---------+---------+---------+---------+---------+---------+---------+---- --------------------------------------------------------------------- -- Create/replace Protegrity UDF functions --------------------------------------------------------------------- -- Create/replace varchar latin encryption function. -- -- * First parameter is the input string to be encrypted. -- * Second parameter is the name of the data elements. -- * Third parameter is the length of the result, -- look at the RETURNS statement. -- * Fourth parameter indicates which id of communication to use, -- "0" is default. -- -- Return value is the encrypted data. -- -- See UDF manual for syntax when creating functions. -- -- Notes: There is a possibility to expand the input up to 63962 -- and output up to 64000 which is maximum for varchar. -- But the larger definition of input/output size, -- the more it will affect performance !!! -- Some applications can also have issues with UDF functions -- with long varchar input, like BTEQ, SQL Assistant. --------------------------------------------------------------------- BT; *** Begin transaction accepted. *** Total elapsed time was 1 second. 2026-05-04 05:12:51 - [INFO] Creating varcharunicode UDFs BTEQ 20.00.00.05 (64-bit) Mon May 4 05:12:51 2026 PID: 26865 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/<database_user_name>, *** Logon successfully completed. *** Teradata Database Release is 20.00.22.31 *** Teradata Database Version is 20.00.22.31 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 20 seconds. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/<DBP_version>/databaseprotector/teradata/sqlscripts/c reatevarcharunicode.sql; +---------+---------+---------+---------+---------+---------+---------+---- 2026-05-04 05:13:15 - [INFO] Varcharunicode UDFs created successfully 2026-05-04 05:13:15 - [INFO] Testing UDFs BTEQ 20.00.00.05 (64-bit) Mon May 4 05:13:15 2026 PID: 26951 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/<database_user_name>, *** Logon successfully completed. *** Teradata Database Release is 20.00.22.31 *** Teradata Database Version is 20.00.22.31 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 20 seconds. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- select pty_getversion(); *** Query completed. One row found. One column returned. *** Total elapsed time was 1 second. pty_getversion() --------------------------------------------------------------------------- <DBP_version> +---------+---------+---------+---------+---------+---------+---------+---- .logoff *** You are now logged off from the <database_user_name>. +---------+---------+---------+---------+---------+---------+---------+---- .quit *** Exiting BTEQ... *** RC (return code) = 0 2026-05-04 05:13:36 - [INFO] Stopping existing Logforwarder on all nodes All 1 node(s) have connected <--------------------- localhost --------------------------------> Stopping Log Forwarder with PID: 23737 Please Wait 2026-05-04 05:13:41 - [INFO] Removing previous installation directories 2026-05-04 05:13:41 - [INFO] Pruning old Teradata library versions on all nodes 2026-05-04 05:13:41 - [WARN] Installed version directory not found: /opt/protegrity/<DBP_version>/databaseprotector/teradata/lib/<DBP_version> 2026-05-04 05:13:41 - [INFO] Synchronizing pruned Database Protector directory to all nodes All 1 node(s) have connected localhost:1022: send completed: 8926088 bytes received (16 files/5 directories) All 1 node(s) have connected All 1 node(s) have connected 2026-05-04 05:13:42 - [INFO] User configuration backup removed: /etc/protegrity_backup_<timestamp> 2026-05-04 05:13:42 - [INFO] Upgrade successful. 2026-05-04 05:13:42 - [INFO] All components upgraded successfully. 2026-05-04 05:13:42 - [INFO] IMPORTANT: This script doesn't handle Protegrity UDT, it must be handled manually. Refer to product documentation. 2026-05-04 05:13:42 - [INFO] IMPORTANT: This script doesn't handle Protegrity Decimal UDF objects, it must be handled manually. Refer to product documentation.
2 - Upgrading the Protector on Multi Node
The Teradata Data Warehouse Protector build provides an automated script to manage the upgrade process. The master script internally calls the scripts to install and upgrade the components. The master script installs and upgrades the components in the following order:
- Log Forwarder
- RPAgent
- Policy Enforcement Point (Database Protector)
The master script is available in the directory where the installation files are extracted. It provides the following arguments:
install- installs the components in an interactive mode.upgrade- installs a newer version of the protector with minimal downtime.silent- installs the components in a non-interactive mode.install.ini- installs the components as per the parameters provided in the file.help- lists the arguments available for the script.
During the upgrade process, the master script:
- Verifies the existing configuration.
- Creates a backup of the existing configuration.
- Stops the required services.
- Drops the existing UDFs.
- Installs the new version.
- Starts the required services.
- Creates the new UDFs and retains the existing configuration.
In addition, the master script will rollback the upgrade process if any errors are encountered. The script will revert the changes and restore the previous working version of the Teradata Data Warehouse Protector.
Important: The automation script will be unable to handle the UDTs and Decimal objects. If UDTs and Decimal objects are present in the database, these must be handled manually.
Viewing the Arguments for the Script
- Log in to the server as the user with the required permissions.
- Navigate to the directory containing the extracted files and the installation scripts.
- To view the arguments, run the following command:
./Install_TeradataProtector_Linux_x64_<DBP_version>.sh --help - Press ENTER.
The script lists the available arguments.
Usage: ./Install_TeradataProtector_Linux_x64_<DBP_version>.sh [--install | --upgrade] [--silent] [--install-ini <file>] [--help] Options: --install Use this option when installing the solution for the first time on a machine/host. (i.e., there is no previous installation present) --upgrade Use this option when upgrading an existing installation on the machine/host. --install-ini <file> (Optional) Provide a path to an install.ini file for silent or pre-configured installations. This option works with --install only. It must not be used with --upgrade or --silent. You can pass this either as: --install-ini /path/to/install.ini or --install-ini=/path/to/install.ini Refer to the product documentation for details about the configuration options available in install.ini. The documentation describes all supported keys, required fields, and example configurations. --silent (Optional) Runs the installation/upgrade in silent mode with minimum interactive prompts. --help, -h Display this help message and exit.
Upgrading the Protector using the Interactive Mode
Note: For installation/upgrade using the automation script, the component will be installed/upgraded within a <DBP_version> folder under the specified directory.
- Log in to the server as the user with the required permissions.
- Navigate to the directory containing the extracted files and the installation scripts.
- To upgrade the protector, run the following command:
./Install_TeradataProtector_Linux_x64_<DBP_version>.sh --upgrade - Press ENTER.
The script performs pre-checks before starting the upgrade. The prompt to select the silent mode of installation appears.
2026-05-04 04:31:43 - [INFO] ======================================================================== 2026-05-04 04:31:43 - [INFO] Starting environment pre-checks before installation/upgrade 2026-05-04 04:31:43 - [INFO] ======================================================================== 2026-05-04 04:31:43 - [INFO] Prerequisites check passed: pcl and bteq commands are available on current/running node 2026-05-04 04:31:43 - [INFO] Checking Teradata PDE state on running node... 2026-05-04 04:31:43 - [INFO] PDE state check passed on running node: PDE state is RUN/STARTED 2026-05-04 04:31:43 - [INFO] Checking accessibility of all Teradata nodes... 2026-05-04 04:31:43 - [INFO] IMPORTANT: ALL nodes must be accessible - if even 1 node is down, installation will be aborted 2026-05-04 04:31:43 - [INFO] ========================================== 2026-05-04 04:31:43 - [INFO] Node accessibility check PASSED 2026-05-04 04:31:43 - [INFO] All 4 node(s) have connected <--------------------- <node_name> --------------------------------> abyss4 <--------------------- <node_name> --------------------------------> abyss3 <--------------------- <node_name> --------------------------------> abyss2 <--------------------- <node_name> --------------------------------> abyss1 2026-05-04 04:31:43 - [INFO] ========================================== 2026-05-04 04:31:43 - [INFO] ======================================================================== 2026-05-04 04:31:43 - [INFO] All environment pre-checks PASSED - proceeding with installation 2026-05-04 04:31:43 - [INFO] ======================================================================== 2026-05-04 04:31:43 - [INFO] If silent mode is selected, the default base directory (/opt/protegrity) will be used as the location of the existing installation for each component (Logforwarder, RPAgent and DatabaseProtector). Do you want silent installation? (yes/no) [no]: - To install the components using the interactive mode, type
no. - Press ENTER.
The prompt to enter the location of the existing installation appears.
Enter existing installation directories: Existing LogForwarder installation directory [/opt/protegrity]: - Enter the directory path where the existing version of the Log Forwarder is installed.
- Press ENTER.
The prompt to enter RPAgent installation directory appears.
Existing RPAgent installation directory [/opt/protegrity]: - Enter the directory path where the existing version of the RPAgent is installed.
- Press ENTER.
The prompt to enter the Database Protector installation directory appears.
Existing DatabaseProtector installation directory [/opt/protegrity]: - Enter the directory path where the existing version of the Database Protector is installed.
- Press ENTER.
The prompt to select a single installation directory for the components appears.
Do you want to install the new LogForwarder, RPAgent, and DatabaseProtector together in a single directory? (yes/no) [no]: - To install the new components in a single directory, type
yes. - Press ENTER.
The prompt to enter the new installation directory appears.
Enter new installation directory [/opt/protegrity]: - Enter the location to install the components.
- Press ENTER.
The prompt to confirm the presence of decimal UDFs appears.
2026-05-04 04:32:12 - [INFO] Verifying previous installation directories for all components... 2026-05-04 04:32:12 - [INFO] Existing LogForwarder directory: /opt/protegrity/logforwarder 2026-05-04 04:32:12 - [INFO] Existing RPAgent directory: /opt/protegrity/rpagent 2026-05-04 04:32:12 - [INFO] Existing DatabaseProtector directory: /opt/protegrity/databaseprotector 2026-05-04 04:32:12 - [INFO] All existing component directories verified successfully. 2026-05-04 04:32:12 - [INFO] Checking for Protegrity UDT in previous installation... 2026-05-04 04:32:12 - [INFO] No UDT PLM file found at expected path. Checking Teradata libraries... 2026-05-04 04:32:14 - [INFO] No Teradata library links to pepteradataudt. UDT not active. 2026-05-04 04:32:14 - [INFO] No active Protegrity UDT detected. Proceeding with upgrade. 2026-05-04 04:32:14 - [INFO] Protegrity Decimal UDF objects are not supported by this script Have you created Protegrity Decimal UDF objects in your previous installation? (yes/no) [no]: - To confirm that the previous installation does not contain any decimal UDF, type
no. - Press ENTER.
The script prompts to create the UDFs. The prompt to enter the database credentials appears.
2026-05-04 04:32:32 - [INFO] No Protegrity Decimal UDF objects present. Proceeding with upgrade. Do you want to continue and create UDFs? To create the UDFs, provide the database credentials (yes/no) [no]: - To create the UDFs, type
yes. - Press ENTER.
The prompt to enter the database username appears.
Enter Teradata database username: - Enter the username.
- Press ENTER.
The prompt to enter the database password appears.
Enter Teradata database user's password: - Enter the password.
- Press ENTER.
The prompt to enter the database name to install the UDF appears.
Enter name of database where the UDFs will be installed [PROTEGRITY]: - Enter the database name to install the UDFs.
- Press ENTER.
The prompt to specify the maximum size of varchar to be allocated by the UDFs appears.
Enter the maximum size of varchar to be allocated by the UDFs [500]: - Enter the maximum size of varchar to be allocated by the UDFs.
- Press ENTER.
The script validates the database and lists the configuration. The prompt to verify the configuration appears.
2026-05-04 03:46:02 - [INFO] Validating database ... 2026-05-04 03:46:23 - [INFO] Database validated successfully 2026-05-04 03:46:23 - [INFO] ************************************************************************** 2026-05-04 03:46:23 - [INFO] Upgrade will be done with following configuration: 2026-05-04 03:46:23 - [INFO] Mode: upgrade 2026-05-04 03:46:23 - [INFO] Existing Logforwarder Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 03:46:23 - [INFO] Existing RPAgent Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 03:46:23 - [INFO] Existing DatabaseProtector Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 03:46:23 - [INFO] New Logforwarder Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 03:46:23 - [INFO] New RPAgent Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 03:46:23 - [INFO] New DatabaseProtector Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 03:46:23 - [INFO] Audit Store Endpoints: <IP_Address>:9200 <IP_Address>:9200 2026-05-04 03:46:23 - [INFO] Upstream (ESA) Hostname or IP Address for RPAgent: <ESA_Hostname> 2026-05-04 03:46:23 - [INFO] Upstream (ESA) Port for RPAgent: 25400 (Default) 2026-05-04 03:46:23 - [INFO] This is an upgrade. 2026-05-04 03:46:23 - [INFO] Previous installations will be backed up before upgrade. 2026-05-04 03:46:23 - [INFO] Existing Logforwarder and RPAgent configurations will be retained 2026-05-04 03:46:23 - [INFO] ************************************************************************** 2026-05-04 03:46:23 - [WARN] ************************************************************************** 2026-05-04 03:46:23 - [WARN] IMPORTANT: Any queries currently running may be impacted during upgrade. 2026-05-04 03:46:23 - [WARN] It is recommended to perform the upgrade during a maintenance window. 2026-05-04 03:46:23 - [WARN] ************************************************************************** 2026-05-04 03:46:23 - [INFO] Please verify the above configuration before proceeding. Do you want to continue? (yes/no) [no]: - To proceed with the configuration, type
yes. - Press ENTER.
The script drops the existing UDFs, creates the new ones, and completes the upgrade.
2026-05-04 04:32:56 - [INFO] Continuing with upgrade... 2026-05-04 04:32:56 - [INFO] Backing up /opt/protegrity/logforwarder to /opt/protegrity/logforwarder_backup_<Timestamp>... 2026-05-04 04:32:56 - [INFO] Backup of /opt/protegrity/logforwarder completed successfully 2026-05-04 04:32:56 - [INFO] Backing up /opt/protegrity/rpagent to /opt/protegrity/rpagent_backup_<Timestamp>... 2026-05-04 04:32:56 - [INFO] Backup of /opt/protegrity/rpagent completed successfully 2026-05-04 04:32:56 - [INFO] Backing up /opt/protegrity/databaseprotector to /opt/protegrity/databaseprotector_backup_<Timestamp>... 2026-05-04 04:32:56 - [INFO] Backup of /opt/protegrity/databaseprotector completed successfully 2026-05-04 04:32:56 - [INFO] Backing up /etc/protegrity to /etc/protegrity_backup_<Timestamp>... 2026-05-04 04:32:57 - [INFO] Backup of /etc/protegrity completed successfully 2026-05-04 04:32:57 - [INFO] Installing/Upgrading LOGFORWARDER... 2026-05-04 04:32:57 - [INFO] Executing ./LogforwarderSetup_Linux_x64_<DBP_version>.sh... 2026-05-04 04:32:57 - [INFO] Retaining existing Logforwarder configuration... 2026-05-04 04:32:57 - [INFO] Logforwarder configuration retained successfully. 2026-05-04 04:32:57 - [INFO] Updating configuration files in /opt/protegrity/<DBP_version>/logforwarder/data to use new installation directory. 2026-05-04 04:32:57 - [INFO] ./LogforwarderSetup_Linux_x64_<DBP_version>.sh completed successfully. 2026-05-04 04:32:57 - [INFO] Installing/Upgrading RPAGENT... 2026-05-04 04:32:57 - [INFO] Executing ./RPAgentSetup_Linux_x64_<DBP_version>.sh... 2026-05-04 04:32:57 - [INFO] Retaining existing RPAgent configuration... 2026-05-04 04:32:57 - [INFO] RPAgent configuration retained successfully. 2026-05-04 04:32:57 - [INFO] Updating configuration files in /opt/protegrity/<DBP_version>/rpagent/data to use new installation directory. 2026-05-04 04:32:57 - [INFO] ./RPAgentSetup_Linux_x64_<DBP_version>.sh completed successfully. 2026-05-04 04:32:57 - [INFO] Old Logforwarder port: 15780 → New Logforwarder port: 15781 2026-05-04 04:32:57 - [INFO] Configuring new Logforwarder to listen on port 15781 2026-05-04 04:32:57 - [INFO] Logforwarder listen port updated to 15781 in /opt/protegrity/<DBP_version>/logforwarder/data/config.d/in_tcp.conf 2026-05-04 04:32:57 - [INFO] Configuring RPAgent to send logs to Logforwarder port 15781 2026-05-04 04:32:57 - [INFO] RPAgent rpagent.cfg updated to use Logforwarder port 15781 2026-05-04 04:32:57 - [INFO] Copying Logforwarder and RPAgent to all nodes in the Teradata cluster 2026-05-04 04:32:57 - [INFO] Copying Logforwarder and RPAgent components to all nodes 2026-05-04 04:32:57 - [INFO] Creating installation directories on all nodes if not present All 4 node(s) have connected All 4 node(s) have connected All 4 node(s) have connected All 4 node(s) have connected 2026-05-04 04:32:57 - [INFO] Copying Logforwarder directory /opt/protegrity/<DBP_version>/logforwarder to all nodes All 4 node(s) have connected <node_name>:1023: send completed: 57942717 bytes received (10 files/7 directories) <node_name>:1022: send completed: 57942717 bytes received (10 files/7 directories) <node_name>:1023: send completed: 57942717 bytes received (10 files/7 directories) <node_name>:1023: send completed: 57942717 bytes received (10 files/7 directories) All 4 node(s) have connected All 4 node(s) have connected 2026-05-04 04:32:59 - [INFO] Logforwarder successfully copied to all nodes 2026-05-04 04:32:59 - [INFO] Copying RPAgent directory /opt/protegrity/<DBP_version>/rpagent to all nodes All 4 node(s) have connected <node_name>:1022: send completed: 14787819 bytes received (9 files/3 directories) <node_name>:1023: send completed: 14787819 bytes received (9 files/3 directories) <node_name>:1023: send completed: 14787819 bytes received (9 files/3 directories) <node_name>:1023: send completed: 14787819 bytes received (9 files/3 directories) All 4 node(s) have connected All 4 node(s) have connected 2026-05-04 04:33:00 - [INFO] RPAgent successfully copied to all nodes 2026-05-04 04:33:00 - [INFO] Logforwarder and RPAgent successfully copied to all nodes 2026-05-04 04:33:00 - [INFO] Starting new Logforwarder on all nodes 2026-05-04 04:33:02 - [INFO] Preparing Database Protector installation... 2026-05-04 04:33:02 - [INFO] Installing/Upgrading DBP... 2026-05-04 04:33:02 - [INFO] Executing ./PepTeradataSetup_Linux_x64_<DBP_version>.sh... 2026-05-04 04:33:03 - [INFO] Retaining existing Database Protector configuration... 2026-05-04 04:33:03 - [INFO] Database Protector configuration retained successfully. 2026-05-04 04:33:03 - [INFO] Updating configuration files in /opt/protegrity/<DBP_version>/databaseprotector/teradata/data to use new installation directory. 2026-05-04 04:33:03 - [INFO] ./PepTeradataSetup_Linux_x64_<DBP_version>.sh completed successfully. 2026-05-04 04:33:03 - [INFO] Configuring DBP to send logs to Logforwarder port 15781 2026-05-04 04:33:03 - [INFO] DBP config.ini updated to use Logforwarder port 15781 2026-05-04 04:33:03 - [INFO] Copying DatabaseProtector to all nodes All 4 node(s) have connected <node_name>:1023: send completed: 8926094 bytes received (16 files/5 directories) <node_name>:1023: send completed: 8926094 bytes received (16 files/5 directories) <node_name>:1023: send completed: 8926094 bytes received (16 files/5 directories) <node_name>:1022: send completed: 8926094 bytes received (16 files/5 directories) All 4 node(s) have connected All 4 node(s) have connected 2026-05-04 04:33:04 - [INFO] Setting DatabaseProtector ownership (tdatuser:tdtrusted) on all nodes All 4 node(s) have connected 2026-05-04 04:33:04 - [INFO] DatabaseProtector successfully copied to all nodes 2026-05-04 04:33:04 - [INFO] Synchronizing /etc/protegrity to all nodes All 4 node(s) have connected All 4 node(s) have connected <node_name>:1022: send completed: 1157 bytes received (1 files/1 directories) <node_name>:1023: send completed: 1157 bytes received (1 files/1 directories) <node_name>:1023: send completed: 1157 bytes received (1 files/1 directories) <node_name>:1023: send completed: 1157 bytes received (1 files/1 directories) All 4 node(s) have connected All 4 node(s) have connected All 4 node(s) have connected 2026-05-04 04:33:04 - [INFO] User configuration directory successfully synchronized to all nodes 2026-05-04 04:33:04 - [INFO] Dropping existing UDFs (database operation on current node only - shared across all nodes) 2026-05-04 04:33:04 - [INFO] Side-by-side upgrade: Using SQL scripts from previous installation: /opt/protegrity/databaseprotector/teradata/sqlscripts BTEQ 17.20.00.08 (64-bit) Mon May 4 04:33:05 2026 PID: 152827 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/dbc, *** Logon successfully completed. *** Teradata Database Release is 17.20.03.18 *** Teradata Database Version is 17.20.03.18 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/databaseprotector/teradata/sqlscripts/dropobjects .sql; +---------+---------+---------+---------+---------+---------+---------+---- 2026-05-04 04:33:18 - [INFO] Main UDFs dropped successfully BTEQ 17.20.00.08 (64-bit) Mon May 4 04:33:19 2026 PID: 153405 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/dbc, *** Logon successfully completed. *** Teradata Database Release is 17.20.03.18 *** Teradata Database Version is 17.20.03.18 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/databaseprotector/teradata/sqlscripts/dropvarchar unicode.sql; +---------+---------+---------+---------+---------+---------+---------+---- 2026-05-04 04:33:20 - [INFO] Varchar unicode UDFs dropped successfully 2026-05-04 04:33:20 - [INFO] Stopping existing RPAgent on all nodes All 4 node(s) have connected <--------------------- <node_name> --------------------------------> Stopping rpagent <--------------------- <node_name> --------------------------------> Stopping rpagent <--------------------- <node_name> --------------------------------> Stopping rpagent <--------------------- <node_name> --------------------------------> Stopping rpagent 2026-05-04 04:33:21 - [INFO] Starting new RPAgent on all nodes 2026-05-04 04:33:21 - [INFO] Successfully launched new RPAgent on all nodes 2026-05-04 04:33:21 - [INFO] Creating new UDFs (database operation on current node only - shared across all nodes) BTEQ 17.20.00.08 (64-bit) Mon May 4 04:33:21 2026 PID: 153511 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/dbc, *** Logon successfully completed. *** Teradata Database Release is 17.20.03.18 *** Teradata Database Version is 17.20.03.18 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/<DBP_version>/databaseprotector/teradata/sqlscripts/c reateobjects.sql; +---------+---------+---------+---------+---------+---------+---------+---- 2026-05-04 04:33:38 - [INFO] Creating varcharunicode UDFs BTEQ 17.20.00.08 (64-bit) Mon May 4 04:33:38 2026 PID: 154263 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/dbc, *** Logon successfully completed. *** Teradata Database Release is 17.20.03.18 *** Teradata Database Version is 17.20.03.18 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/<DBP_version>/databaseprotector/teradata/sqlscripts/c reatevarcharunicode.sql; +---------+---------+---------+---------+---------+---------+---------+---- 2026-05-04 04:33:40 - [INFO] Varcharunicode UDFs created successfully 2026-05-04 04:33:40 - [INFO] Testing UDFs BTEQ 17.20.00.08 (64-bit) Mon May 4 04:33:40 2026 PID: 154353 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/dbc, *** Logon successfully completed. *** Teradata Database Release is 17.20.03.18 *** Teradata Database Version is 17.20.03.18 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- select pty_getversion(); *** Query completed. One row found. One column returned. *** Total elapsed time was 1 second. pty_getversion() --------------------------------------------------------------------------- <DBP_version> +---------+---------+---------+---------+---------+---------+---------+---- .logoff *** You are now logged off from the DBC. +---------+---------+---------+---------+---------+---------+---------+---- .quit *** Exiting BTEQ... *** RC (return code) = 0 2026-05-04 04:33:40 - [INFO] Stopping existing Logforwarder on all nodes All 4 node(s) have connected <--------------------- <node_name> --------------------------------> Stopping Log Forwarder with PID: 226940 Please Wait <--------------------- <node_name> --------------------------------> Stopping Log Forwarder with PID: 146408 Please Wait <--------------------- <node_name> --------------------------------> Stopping Log Forwarder with PID: 209497 Please Wait <--------------------- <node_name> --------------------------------> Stopping Log Forwarder with PID: 85225 Please Wait 2026-05-04 04:33:45 - [INFO] Removing previous installation directories 2026-05-04 04:33:45 - [INFO] Removing previous Logforwarder directory from all nodes: /opt/protegrity/logforwarder All 4 node(s) have connected 2026-05-04 04:33:46 - [INFO] Removing previous RPAgent directory from all nodes: /opt/protegrity/rpagent All 4 node(s) have connected 2026-05-04 04:33:46 - [INFO] Removing previous DatabaseProtector directory from all nodes: /opt/protegrity/databaseprotector All 4 node(s) have connected 2026-05-04 04:33:46 - [INFO] User configuration backup removed: /etc/protegrity_backup_<Timestamp> 2026-05-04 04:33:46 - [INFO] Upgrade successful. 2026-05-04 04:33:46 - [INFO] All components upgraded successfully. 2026-05-04 04:33:46 - [INFO] IMPORTANT: This script doesn't handle Protegrity UDT, it must be handled manually. Refer to product documentation. 2026-05-04 04:33:46 - [INFO] IMPORTANT: This script doesn't handle Protegrity Decimal UDF objects, it must be handled manually. Refer to product documentation.
Upgrading the Protector using the Silent Mode
Note: For installation/upgrade using the automation script, the component will be installed/upgraded within a <DBP_version> folder under the specified directory.
- Log in to the server as the user with the required permissions.
- Navigate to the directory containing the extracted files and the installation scripts.
- To upgrade the protector, run the following command:
./Install_TeradataProtector_Linux_x64_<DBP_version>.sh --upgrade - Press ENTER.
The script performs pre-checks before starting the upgrade. The prompt to select the silent mode of installation appears.
2026-05-04 04:40:50 - [INFO] ======================================================================== 2026-05-04 04:40:50 - [INFO] Starting environment pre-checks before installation/upgrade 2026-05-04 04:40:50 - [INFO] ======================================================================== 2026-05-04 04:40:50 - [INFO] Prerequisites check passed: pcl and bteq commands are available on current/running node 2026-05-04 04:40:50 - [INFO] Checking Teradata PDE state on running node... 2026-05-04 04:40:50 - [INFO] PDE state check passed on running node: PDE state is RUN/STARTED 2026-05-04 04:40:50 - [INFO] Checking accessibility of all Teradata nodes... 2026-05-04 04:40:50 - [INFO] IMPORTANT: ALL nodes must be accessible - if even 1 node is down, installation will be aborted 2026-05-04 04:40:50 - [INFO] ========================================== 2026-05-04 04:40:50 - [INFO] Node accessibility check PASSED 2026-05-04 04:40:50 - [INFO] All 4 node(s) have connected <--------------------- <node_name> --------------------------------> abyss3 <--------------------- <node_name> --------------------------------> abyss4 <--------------------- <node_name> --------------------------------> abyss2 <--------------------- <node_name> --------------------------------> abyss1 2026-05-04 04:40:50 - [INFO] ========================================== 2026-05-04 04:40:50 - [INFO] ======================================================================== 2026-05-04 04:40:50 - [INFO] All environment pre-checks PASSED - proceeding with installation 2026-05-04 04:40:50 - [INFO] ======================================================================== 2026-05-04 04:40:50 - [INFO] If silent mode is selected, the default base directory (/opt/protegrity) will be used as the location of the existing installation for each component (Logforwarder, RPAgent and DatabaseProtector). Do you want silent installation? (yes/no) [no]: - To install the components using the silent mode, type
yes. - Press ENTER.
The prompt to confirm the presence of decimal UDF installation appears.
2026-05-04 04:40:54 - [INFO] You have chosen silent mode. Therefore, /opt/protegrity is considered as base directory for new installation. 2026-05-04 04:40:54 - [INFO] This is an upgrade and you have chosen silent mode. Therefore, /opt/protegrity is considered as base directory for existing installation. 2026-05-04 04:40:54 - [INFO] Verifying previous installation directories for all components... 2026-05-04 04:40:54 - [INFO] Existing LogForwarder directory: /opt/protegrity/logforwarder 2026-05-04 04:40:54 - [INFO] Existing RPAgent directory: /opt/protegrity/rpagent 2026-05-04 04:40:54 - [INFO] Existing DatabaseProtector directory: /opt/protegrity/databaseprotector 2026-05-04 04:40:54 - [INFO] All existing component directories verified successfully. 2026-05-04 04:40:54 - [INFO] Checking for Protegrity UDT in previous installation... 2026-05-04 04:40:54 - [INFO] No UDT PLM file found at expected path. Checking Teradata libraries... 2026-05-04 04:40:56 - [INFO] No Teradata library links to pepteradataudt. UDT not active. 2026-05-04 04:40:56 - [INFO] No active Protegrity UDT detected. Proceeding with upgrade. 2026-05-04 04:40:56 - [INFO] Protegrity Decimal UDF objects are not supported by this script Have you created Protegrity Decimal UDF objects in your previous installation? (yes/no) [no]: - To confirm that the previous installation does not contain decimal UDFs, type
no. - Press ENTER.
The script prompts to create the UDFs. The prompt to enter the database credentials appears.
2026-05-04 04:41:01 - [INFO] No Protegrity Decimal UDF objects present. Proceeding with upgrade. Do you want to continue and create UDFs? To create the UDFs, provide the database credentials (yes/no) [no]: - To create the UDFs, type
yes. - Press ENTER.
The prompt to enter the database username appears.
Enter Teradata database username: - Enter the username.
- Press ENTER.
The prompt to enter the database password appears.
Enter Teradata database user's password: - Enter the password.
The script lists the current configuration and the prompt to proceed with the configuration appears.
2026-05-04 04:41:11 - [INFO] Silent upgrade: Using previous database name to install the UDFs: <database_name> 2026-05-04 04:41:12 - [INFO] Silent upgrade: Using previous maximum size of varchar to be allocated by the UDFs: 500 2026-05-04 04:41:12 - [INFO] Validating database ... 2026-05-04 04:41:12 - [INFO] Database validated successfully 2026-05-04 04:41:12 - [INFO] ************************************************************************** 2026-05-04 04:41:12 - [INFO] Upgrade will be done with following configuration: 2026-05-04 04:41:12 - [INFO] Mode: upgrade 2026-05-04 04:41:12 - [INFO] Existing Logforwarder Installation Directory: /opt/protegrity 2026-05-04 04:41:12 - [INFO] Existing RPAgent Installation Directory: /opt/protegrity 2026-05-04 04:41:12 - [INFO] Existing DatabaseProtector Installation Directory: /opt/protegrity 2026-05-04 04:41:12 - [INFO] New Logforwarder Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 04:41:12 - [INFO] New RPAgent Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 04:41:12 - [INFO] New DatabaseProtector Installation Directory: /opt/protegrity/<DBP_version> 2026-05-04 04:41:12 - [INFO] Audit Store Endpoints: <Audit_Store_Endpoint>:9200 2026-05-04 04:41:12 - [INFO] Upstream (ESA) Hostname or IP Address for RPAgent: <ESA_Hostname> 2026-05-04 04:41:12 - [INFO] Upstream (ESA) Port for RPAgent: 25400 (Default) 2026-05-04 04:41:12 - [INFO] This is an upgrade. 2026-05-04 04:41:12 - [INFO] Previous installations will be backed up before upgrade. 2026-05-04 04:41:12 - [INFO] Existing Logforwarder and RPAgent configurations will be retained 2026-05-04 04:41:12 - [INFO] ************************************************************************** 2026-05-04 04:41:12 - [WARN] ************************************************************************** 2026-05-04 04:41:12 - [WARN] IMPORTANT: Any queries currently running may be impacted during upgrade. 2026-05-04 04:41:12 - [WARN] It is recommended to perform the upgrade during a maintenance window. 2026-05-04 04:41:12 - [WARN] ************************************************************************** 2026-05-04 04:41:12 - [INFO] Please verify the above configuration before proceeding. Do you want to continue? (yes/no) [no]: - To upgrade the protector using the configuration, type
yes. - Press ENTER.
The script upgrades the Log Forwarder, RPAgent, the protector, and the UDFs and completes the installation.
2026-05-04 04:41:27 - [INFO] Continuing with upgrade... 2026-05-04 04:41:27 - [INFO] Backing up /opt/protegrity/logforwarder to /opt/protegrity/logforwarder_backup_<Timestamp>... 2026-05-04 04:41:27 - [INFO] Backup of /opt/protegrity/logforwarder completed successfully 2026-05-04 04:41:27 - [INFO] Backing up /opt/protegrity/rpagent to /opt/protegrity/rpagent_backup_<Timestamp>... 2026-05-04 04:41:27 - [INFO] Backup of /opt/protegrity/rpagent completed successfully 2026-05-04 04:41:27 - [INFO] Backing up /opt/protegrity/databaseprotector to /opt/protegrity/databaseprotector_backup_<Timestamp>... 2026-05-04 04:41:27 - [INFO] Backup of /opt/protegrity/databaseprotector completed successfully 2026-05-04 04:41:27 - [INFO] Backing up /etc/protegrity to /etc/protegrity_backup_<Timestamp>... 2026-05-04 04:41:28 - [INFO] Backup of /etc/protegrity completed successfully 2026-05-04 04:41:28 - [INFO] Installing/Upgrading LOGFORWARDER... 2026-05-04 04:41:28 - [INFO] Executing ./LogforwarderSetup_Linux_x64_<DBP_version>.sh... 2026-05-04 04:41:28 - [INFO] Retaining existing Logforwarder configuration... 2026-05-04 04:41:28 - [INFO] Logforwarder configuration retained successfully. 2026-05-04 04:41:28 - [INFO] Updating configuration files in /opt/protegrity/<DBP_version>/logforwarder/data to use new installation directory. 2026-05-04 04:41:28 - [INFO] ./LogforwarderSetup_Linux_x64_<DBP_version>.sh completed successfully. 2026-05-04 04:41:28 - [INFO] Installing/Upgrading RPAGENT... 2026-05-04 04:41:28 - [INFO] Executing ./RPAgentSetup_Linux_x64_<DBP_version>.sh... 2026-05-04 04:41:28 - [INFO] Retaining existing RPAgent configuration... 2026-05-04 04:41:28 - [INFO] RPAgent configuration retained successfully. 2026-05-04 04:41:28 - [INFO] Updating configuration files in /opt/protegrity/<DBP_version>/rpagent/data to use new installation directory. 2026-05-04 04:41:28 - [INFO] ./RPAgentSetup_Linux_x64_<DBP_version>.sh completed successfully. 2026-05-04 04:41:28 - [INFO] Old Logforwarder port: 15781 → New Logforwarder port: 15780 2026-05-04 04:41:28 - [INFO] Configuring new Logforwarder to listen on port 15780 2026-05-04 04:41:28 - [INFO] Logforwarder listen port updated to 15780 in /opt/protegrity/<DBP_version>/logforwarder/data/config.d/in_tcp.conf 2026-05-04 04:41:28 - [INFO] Configuring RPAgent to send logs to Logforwarder port 15780 2026-05-04 04:41:28 - [INFO] RPAgent rpagent.cfg updated to use Logforwarder port 15780 2026-05-04 04:41:28 - [INFO] Copying Logforwarder and RPAgent to all nodes in the Teradata cluster 2026-05-04 04:41:28 - [INFO] Copying Logforwarder and RPAgent components to all nodes 2026-05-04 04:41:28 - [INFO] Creating installation directories on all nodes if not present All 4 node(s) have connected All 4 node(s) have connected All 4 node(s) have connected All 4 node(s) have connected 2026-05-04 04:41:29 - [INFO] Copying Logforwarder directory /opt/protegrity/<DBP_version>/logforwarder to all nodes All 4 node(s) have connected <node_name>:1023: send completed: 57975783 bytes received (11 files/7 directories) <node_name>:1023: send completed: 57975783 bytes received (11 files/7 directories) <node_name>:1022: send completed: 57975783 bytes received (11 files/7 directories) <node_name>:1023: send completed: 57975783 bytes received (11 files/7 directories) All 4 node(s) have connected All 4 node(s) have connected 2026-05-04 04:41:30 - [INFO] Logforwarder successfully copied to all nodes 2026-05-04 04:41:30 - [INFO] Copying RPAgent directory /opt/protegrity/<DBP_version>/rpagent to all nodes All 4 node(s) have connected <node_name>:1023: send completed: 14787819 bytes received (9 files/3 directories) <node_name>:1023: send completed: 14787819 bytes received (9 files/3 directories) <node_name>:1022: send completed: 14787819 bytes received (9 files/3 directories) <node_name>:1023: send completed: 14787819 bytes received (9 files/3 directories) All 4 node(s) have connected All 4 node(s) have connected 2026-05-04 04:41:31 - [INFO] RPAgent successfully copied to all nodes 2026-05-04 04:41:31 - [INFO] Logforwarder and RPAgent successfully copied to all nodes 2026-05-04 04:41:31 - [INFO] Starting new Logforwarder on all nodes 2026-05-04 04:41:33 - [INFO] Preparing Database Protector installation... 2026-05-04 04:41:33 - [INFO] Installing/Upgrading DBP... 2026-05-04 04:41:33 - [INFO] Executing ./PepTeradataSetup_Linux_x64_<DBP_version>.sh... 2026-05-04 04:41:34 - [INFO] Retaining existing Database Protector configuration... 2026-05-04 04:41:34 - [INFO] Database Protector configuration retained successfully. 2026-05-04 04:41:34 - [INFO] Updating configuration files in /opt/protegrity/<DBP_version>/databaseprotector/teradata/data to use new installation directory. 2026-05-04 04:41:34 - [INFO] ./PepTeradataSetup_Linux_x64_<DBP_version>.sh completed successfully. 2026-05-04 04:41:34 - [INFO] Configuring DBP to send logs to Logforwarder port 15780 2026-05-04 04:41:34 - [INFO] DBP config.ini updated to use Logforwarder port 15780 2026-05-04 04:41:34 - [INFO] Copying DatabaseProtector to all nodes All 4 node(s) have connected <node_name>:1022: send completed: 8926094 bytes received (16 files/5 directories) <node_name>:1023: send completed: 8926094 bytes received (16 files/5 directories) <node_name>:1023: send completed: 8926094 bytes received (16 files/5 directories) <node_name>:1023: send completed: 8926094 bytes received (16 files/5 directories) All 4 node(s) have connected All 4 node(s) have connected 2026-05-04 04:41:35 - [INFO] Setting DatabaseProtector ownership (tdatuser:tdtrusted) on all nodes All 4 node(s) have connected 2026-05-04 04:41:35 - [INFO] DatabaseProtector successfully copied to all nodes 2026-05-04 04:41:35 - [INFO] Synchronizing /etc/protegrity to all nodes All 4 node(s) have connected All 4 node(s) have connected <node_name>:1022: send completed: 1157 bytes received (1 files/1 directories) <node_name>:1023: send completed: 1157 bytes received (1 files/1 directories) <node_name>:1023: send completed: 1157 bytes received (1 files/1 directories) <node_name>:1023: send completed: 1157 bytes received (1 files/1 directories) All 4 node(s) have connected All 4 node(s) have connected All 4 node(s) have connected 2026-05-04 04:41:36 - [INFO] User configuration directory successfully synchronized to all nodes 2026-05-04 04:41:36 - [INFO] Dropping existing UDFs (database operation on current node only - shared across all nodes) 2026-05-04 04:41:36 - [INFO] Side-by-side upgrade: Using SQL scripts from previous installation: /opt/protegrity/databaseprotector/teradata/sqlscripts BTEQ 17.20.00.08 (64-bit) Mon May 4 04:41:36 2026 PID: 162646 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/<database_user_name>, *** Logon successfully completed. *** Teradata Database Release is 17.20.03.18 *** Teradata Database Version is 17.20.03.18 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/databaseprotector/teradata/sqlscripts/dropobjects .sql; +---------+---------+---------+---------+---------+---------+---------+---- 2026-05-04 04:41:49 - [INFO] Main UDFs dropped successfully BTEQ 17.20.00.08 (64-bit) Mon May 4 04:41:49 2026 PID: 163223 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/<database_user_name>, *** Logon successfully completed. *** Teradata Database Release is 17.20.03.18 *** Teradata Database Version is 17.20.03.18 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/databaseprotector/teradata/sqlscripts/dropvarchar unicode.sql; +---------+---------+---------+---------+---------+---------+---------+---- 2026-05-04 04:41:51 - [INFO] Varchar unicode UDFs dropped successfully 2026-05-04 04:41:51 - [INFO] Stopping existing RPAgent on all nodes All 4 node(s) have connected <--------------------- <node_name> --------------------------------> Stopping rpagent <--------------------- <node_name> --------------------------------> Stopping rpagent <--------------------- <node_name> --------------------------------> Stopping rpagent <--------------------- <node_name> --------------------------------> Stopping rpagent 2026-05-04 04:41:52 - [INFO] Starting new RPAgent on all nodes 2026-05-04 04:41:52 - [INFO] Successfully launched new RPAgent on all nodes 2026-05-04 04:41:52 - [INFO] Creating new UDFs (database operation on current node only - shared across all nodes) BTEQ 17.20.00.08 (64-bit) Mon May 4 04:41:52 2026 PID: 163329 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/<database_user_name>, *** Logon successfully completed. *** Teradata Database Release is 17.20.03.18 *** Teradata Database Version is 17.20.03.18 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/<DBP_version>/databaseprotector/teradata/sqlscripts/c reateobjects.sql; +---------+---------+---------+---------+---------+---------+---------+---- 2026-05-04 04:42:09 - [INFO] Creating varcharunicode UDFs BTEQ 17.20.00.08 (64-bit) Mon May 4 04:42:09 2026 PID: 164081 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/<database_user_name>, *** Logon successfully completed. *** Teradata Database Release is 17.20.03.18 *** Teradata Database Version is 17.20.03.18 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- .run file /opt/protegrity/<DBP_version>/databaseprotector/teradata/sqlscripts/c reatevarcharunicode.sql; +---------+---------+---------+---------+---------+---------+---------+---- 2026-05-04 04:42:11 - [INFO] Varcharunicode UDFs created successfully 2026-05-04 04:42:11 - [INFO] Testing UDFs BTEQ 17.20.00.08 (64-bit) Mon May 4 04:42:11 2026 PID: 164171 +---------+---------+---------+---------+---------+---------+---------+---- .SET EXITONDELAY ON MAXREQTIME 300 RC 12 +---------+---------+---------+---------+---------+---------+---------+---- .logon localhost/<database_user_name>, *** Logon successfully completed. *** Teradata Database Release is 17.20.03.18 *** Teradata Database Version is 17.20.03.18 *** Transaction Semantics are BTET. *** Session Character Set Name is 'ASCII'. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- database <database_name>; *** New default database accepted. *** Total elapsed time was 1 second. +---------+---------+---------+---------+---------+---------+---------+---- .IF ERRORCODE <> 0 THEN .QUIT 12; +---------+---------+---------+---------+---------+---------+---------+---- select pty_getversion(); *** Query completed. One row found. One column returned. *** Total elapsed time was 1 second. pty_getversion() --------------------------------------------------------------------------- <DBP_version> +---------+---------+---------+---------+---------+---------+---------+---- .logoff *** You are now logged off from the <database_user_name>. +---------+---------+---------+---------+---------+---------+---------+---- .quit *** Exiting BTEQ... *** RC (return code) = 0 2026-05-04 04:42:11 - [INFO] Stopping existing Logforwarder on all nodes All 4 node(s) have connected <--------------------- <node_name> --------------------------------> Stopping Log Forwarder with PID: 227791 Please Wait <--------------------- <node_name> --------------------------------> Stopping Log Forwarder with PID: 155218 Please Wait <--------------------- <node_name> --------------------------------> Stopping Log Forwarder with PID: 210287 Please Wait <--------------------- <node_name> --------------------------------> Stopping Log Forwarder with PID: 86042 Please Wait 2026-05-04 04:42:17 - [INFO] Removing previous installation directories 2026-05-04 04:42:17 - [INFO] Removing previous Logforwarder directory from all nodes: /opt/protegrity/logforwarder All 4 node(s) have connected 2026-05-04 04:42:17 - [INFO] Removing previous RPAgent directory from all nodes: /opt/protegrity/rpagent All 4 node(s) have connected 2026-05-04 04:42:17 - [INFO] Removing previous DatabaseProtector directory from all nodes: /opt/protegrity/databaseprotector All 4 node(s) have connected 2026-05-04 04:42:17 - [INFO] User configuration backup removed: /etc/protegrity_backup_<Timestamp> 2026-05-04 04:42:17 - [INFO] Upgrade successful. 2026-05-04 04:42:17 - [INFO] All components upgraded successfully. 2026-05-04 04:42:17 - [INFO] IMPORTANT: This script doesn't handle Protegrity UDT, it must be handled manually. Refer to product documentation. 2026-05-04 04:42:17 - [INFO] IMPORTANT: This script doesn't handle Protegrity Decimal UDF objects, it must be handled manually. Refer to product documentation.