Oracle Database Client 19c
Overview
Oracle Database Client 19c provides the tools and libraries you need to connect to and manage remote Oracle 19c and earlier database instances. It includes SQL*Plus, Oracle Net and other client utilities, and it does not require a full database installation. This guide covers deploying and configuring it on Linux from the SecureAnyCloud AMI on AWS Marketplace.
What you get:
- Oracle Database Client 19c 19.3.0.0.0 installed at /u01
- A dedicated oracle OS user with an environment script (setEnv.sh)
- SQL*Plus for connecting to remote Oracle databases
- An OS package update script that keeps the system current
- AWS CLI v2 for AWS service integration
- Systems Manager Agent (SSM) for remote management
- CloudWatch Agent for monitoring
- Latest security patches applied at build time
- 24/7 SecureAnyCloud support with guaranteed 24 hour response SLA
Prerequisites
Before you launch the AMI, make sure you have:
- An active AWS account
- An active subscription to the Oracle Database Client 19c listing on AWS Marketplace
- An EC2 key pair for SSH access
- The hostname, port and service name of the Oracle Database you want to connect to
Recommended instance type: t3.small (2 vCPU, 2 GB RAM) or larger. The minimum requirements are 1 vCPU, 1 GB RAM and 20 GB of disk space.
Launch the AMI
- Go to AWS Marketplace and search for "Oracle Database Client 19c SecureAnyCloud".
- Click Continue to Subscribe, accept the terms, then click Continue to Configuration.
- Select your preferred Region and Software Version.
- Click Continue to Launch.
- Choose Launch through EC2 for full control over the instance configuration.
- Select your instance type (
t3.smallrecommended). - Configure storage: 20 GB gp3 minimum.
- Configure your Security Group with this inbound rule:
- 22 (TCP), source your IP: SSH access
- Select your EC2 key pair and launch the instance.
Connect via SSH
When your instance is running and has passed both status checks (2/2), connect over SSH:
ssh -i your-key.pem ec2-user@<public-ip-address>To switch to the root user:
sudo su -Important: Wait for the instance to reach 2/2 successful status checks before you connect. If you connect too early, you may see permission denied errors while the instance is still initializing.
Switch to the Oracle User and Set Environment
The dedicated oracle OS user owns the Oracle Client software. Switch to this user and source the environment. Type the command rather than pasting it:
sudo su - oracle cd $HOME . ./setEnv.shThe setEnv.sh script sets the Oracle environment variables that utilities such as sqlplus require.
Configure tnsnames.ora
Before you connect to a remote Oracle Database, create a tnsnames.ora configuration file. As the oracle user, run these commands. Replace the example values with your target database details:
cd $HOME . ./setEnv.sh echo 'MY_DATABASE = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = YOUR_DB_HOSTNAME)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = YOUR_SERVICE_NAME) ) ) ' > "$ORACLE_HOME/network/admin/tnsnames.ora"Replace these values:
- YOUR_DB_HOSTNAME with the IP address or DNS name of your Oracle Database server.
- 1521 with the port number, if it differs from the default.
- YOUR_SERVICE_NAME with the service name of the target database.
Connect to a Remote Database via SQL*Plus
Set the Oracle environment variables and connect to your remote database:
cd $HOME . ./setEnv.sh sqlplus 'system/password@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=your-db-host)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=your-service-name)))'Replace system, password, your-db-host and your-service-name with your actual database connection details.
Expected output:
SQL*Plus: Release 19.0.0.0.0 Production Copyright (c) 1982, 2019, Oracle. All rights reserved. Connected to: Oracle Database ... SQL>Type EXIT to leave the SQL*Plus session.
Server Components
The image installs one component:
- Oracle Client 19c 19.3.0.0.0: installed at /u01
Note: The automatic OS package update script may update component versions on first boot.
Filesystem Layout
The image uses these mount points:
- / (38 GB): root filesystem
- /boot (2.0 GB): operating system kernel files
- /u01 (20 GB): Oracle software installation directory
Key Oracle directories:
- /u01/app/oracle: Oracle base directory
- /u01/app/oracle/product: Oracle Client software home
- $ORACLE_HOME/network/admin: TNS configuration files (tnsnames.ora, sqlnet.ora)
Managing the Oracle Client
The Oracle Client is a set of tools and libraries, not a running service, so there are no services to start or stop. To use the client tools, switch to the oracle user and source the environment.
sudo su - oracle cd $HOME . ./setEnv.shScripts and Log Files
Scripts and logs, with their locations:
- initial_boot_update.sh (/stage/scripts): updates the OS with the latest packages on first boot
- initial_boot_update.log (/stage/scripts): output log for the boot update script
- setEnv.sh (/home/oracle): sets Oracle environment variables for sqlplus and other tools
On Startup
An OS package update script runs on first boot to bring the image fully up to date. To disable it, remove the script and its crontab entry:
rm -f /stage/scripts/initial_boot_update.sh crontab -e
# Delete the following line, save and exit: @reboot /stage/scripts/initial_boot_update.shTroubleshooting
You cannot connect over SSH
- Verify that the instance has reached 2/2 status checks in the EC2 console.
- Confirm that your security group allows inbound TCP port 22 from your IP.
- Make sure you are using the correct key pair and connecting as
ec2-user.
SQL*Plus cannot connect to the remote database
- Verify that the target database is running and accepting connections.
- Check that the hostname, port and service name are correct.
- Make sure the security group of the target database allows inbound port 1521 from this client instance.
- Test network connectivity:
telnet <db-host> 1521 - Verify that tnsnames.ora is correctly configured at
$ORACLE_HOME/network/admin/tnsnames.ora.
ORA-12541: TNS:no listener
- The target database listener is not running. Contact the database administrator.
- Verify that the hostname and port are correct in your connection string.
ORA-12514: TNS:listener does not currently know of service
- The service name in your connection string does not match the target database. Verify the correct service name with the database administrator.
Security Recommendations
- Restrict SSH access. Allow port 22 only from trusted IP addresses.
- Secure credentials. Never store database passwords in plain-text files.
- Use Oracle Wallet. Configure Oracle Wallet for secure credential storage.
- Encrypt connections. Configure Oracle Net Services to use SSL/TLS encryption.
- Limit OS access. Restrict SSH access to authorized administrators only.
- Keep the system updated. Apply OS security patches regularly.
Support
If you have any issues with this product, contact SecureAnyCloud support:
- Email: sales@secureanycloud.com
- Website: secureanycloud.com
- Support hours: 24/7 with guaranteed 24 hour response SLA
Deploy on AWS
Launch Oracle Database Client 19c with 24/7 support from SecureAnyCloud.
View on Marketplace
Need Help?
Our support team is available 24/7.
sales@secureanycloud.com
Deploy on AWS
Launch Oracle Database Client 19c with 24/7 support from SecureAnyCloud.
View this image
Need Help?
Our support team is available 24/7.
sales@secureanycloud.com