Oracle DB Client 12.1
Overview
Oracle Database Client provides the tools and libraries you need to connect to and manage remote Oracle Database instances, without installing a full database server. This guide covers Oracle Database Client 12.1 (12.1.0.2.0) on Oracle Linux 8, one variant of the SecureAnyCloud Oracle Database Client listing. For a different client version, return to all Oracle Database Client versions.
What you get:
- Oracle Database Client (Administrator install) preconfigured at /u01/app/oracle/product/12.1.0/client_1
- SQL*Plus, SQL*Loader (sqlldr), tnsping and Oracle Net (TNS/EZConnect)
- Full OCI and JDBC Thin client libraries for application development
- Seeded tnsnames.ora and sqlnet.ora files, ready for TNS alias configuration
- A system-wide environment:
sqlplus, sqlldr andtnspingwork from any shell, and the Oracle environment variables are set on login via/etc/profile.d/oracle-client.sh - The bundled Oracle JDK replaced with a system-managed OpenJDK (eliminates CVE exposure)
- A first-boot OS update sweep for the latest security patches
- 24/7 SecureAnyCloud support with a guaranteed 24-hour response SLA
Prerequisites
Before you launch this AMI, make sure you have:
- An active AWS account with an active Marketplace subscription for this listing
- 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.medium (2 vCPU, 4 GB RAM)
Launch the AMI
- Go to AWS Marketplace and search for "Oracle Database Client SecureAnyCloud".
- Click Continue to Subscribe, accept the terms, then click Continue to Configuration.
- Select your preferred Region and the 12.1 on Oracle Linux 8 software version.
- Click Continue to Launch, then choose Launch through EC2.
- Select instance type
t3.medium(recommended) or larger. - Configure storage with a minimum of 20 GB gp3.
- Configure your Security Group with this inbound rule: port 22, protocol TCP, source your IP, for SSH access.
- Select your EC2 key pair and launch the instance.
Connect via SSH
When the instance is running and has passed both status checks (2/2), connect as ec2-user:
ssh -i your-key.pem ec2-user@<instance-public-ip>Replace <instance-public-ip> with the Public IPv4 address shown in the EC2 console.
Verify the Oracle Client installation
/etc/profile.d/oracle-client.sh configures the Oracle environment automatically for all users. On login, it sets ORACLE_HOME, PATH and LD_LIBRARY_PATH. Confirm that the client works:
sqlplus -VThe output looks like this:
SQL*Plus: Release 18.0.0.0.0 - Production Version 12.1.0.2.0Check that Oracle Net (the TNS layer) loads correctly:
tnsping invalid_aliasThe output begins with:
TNS Ping Utility for Linux: Version 12.1.0.2.0The alias invalid_alias is intentionally unknown. The banner confirms that the TNS layer works.
List the core OCI client libraries. The environment is set automatically on login:
ls "$ORACLE_HOME"/lib/libclntsh.so*Configure tnsnames.ora
Add your remote database connection aliases to tnsnames.ora. The file is at /u01/app/oracle/product/12.1.0/client_1/network/admin/tnsnames.ora. Open it with any editor:
sudo vi $ORACLE_HOME/network/admin/tnsnames.oraAdd an entry in this format:
MY_DATABASE = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = your-db-hostname)(PORT = 1521)) ) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = your-service-name) ) )Replace these values:
your-db-hostnamewith the IP address or DNS name of the Oracle Database server1521with the listener port, if it uses a different portyour-service-namewith the database service name (ask your DBA if you are unsure)
Connect to a remote Oracle database via SQL*Plus
To test connectivity without a TNS alias, use EZConnect syntax and replace the sample values with your own:
sqlplus username/password@//your-db-hostname:1521/your-service-nameWhen you have configured a TNS alias, connect with it:
sqlplus username/password@MY_DATABASEType EXIT to leave the SQL*Plus session.
Using SQL*Loader
SQL*Loader (sqlldr) is included for high-speed bulk data loading. Confirm that it is present:
sqlldr /? 2>&1 | head -5Environment variables reference
- ORACLE_HOME: /u01/app/oracle/product/12.1.0/client_1
- ORACLE_BASE: /u01/app/oracle
- TNS_ADMIN: /u01/app/oracle/product/12.1.0/client_1/network/admin
/etc/profile.d/oracle-client.sh sets these automatically for ec2-user.
Filesystem layout
/u01/app/oracle/product/12.1.0/client_1: Oracle ClientORACLE_HOME- /u01/app/oraInventory: Oracle Universal Installer inventory
/u01/app/oracle/product/12.1.0/client_1/network/admin/tnsnames.ora: TNS alias configuration- /u01/app/oracle/product/12.1.0/client_1/network/admin/sqlnet.ora: Oracle Net client settings
- /home/oracle/setEnv.sh: source file for the oracle user environment variables
On startup
A first-boot OS update script runs once on first launch to apply the latest security patches. It removes itself after it completes successfully. To check for it, run:
sudo crontab -lTo disable it, run:
sudo crontab -l | grep -v initial_boot_update | sudo crontab - sudo rm -f /stage/scripts/initial_boot_update.shTroubleshooting
Cannot connect via SSH
- Verify that the instance has passed both EC2 status checks (2/2).
- Confirm that your security group allows inbound TCP port 22 from your IP.
- Make sure you connect as
ec2-userwith the correct key pair.
SQL*Plus cannot connect: ORA-12541, TNS no listener
The Oracle listener on the target database is not running. Contact the database administrator.
SQL*Plus cannot connect: ORA-12514, TNS listener does not 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.
SQL*Plus cannot connect: ORA-12170, TNS connect timeout
- Verify that the target database hostname and port are reachable with
telnet your-db-hostname 1521. - Check that the database server's security group or firewall allows inbound port 1521 from this EC2 instance.
Back to all Oracle Database Client versions
Deploy on AWS
Launch Oracle Database Client with 24/7 support from SecureAnyCloud.
View on Marketplace
Need Help?
Our support team is available 24/7.
sales@secureanycloud.com