Oracle Database 19c Enterprise on Oel 7
Overview
Oracle Database 19c is the long-term-support release of Oracle Database. This image runs Oracle Database 19c Enterprise Edition on Oracle Enterprise Linux 7, which gives you full compatibility for Oracle workloads on the OEL platform.
This guide covers deploying and configuring it on Linux using the SecureAnyCloud AMI from the AWS Marketplace. The ORCL sample database and the listener are preconfigured, and helper scripts start and stop them.
What you get:
- Oracle Database 19c Enterprise Edition on Oracle Enterprise Linux 7 19.3.0.0.0 (64-bit) installed at /u01
- A preconfigured ORCL sample database, ready to start
- Oracle Listener preconfigured on port 1521
- A dedicated oracle OS user with environment scripts
- Helper scripts for starting and stopping the database and listener
- Randomly generated SYSTEM user credentials
- 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 a guaranteed 24 hour response SLA
Prerequisites
Before you launch this AMI, make sure you have:
- An active AWS account
- An active subscription to the Oracle Database 19c Enterprise on OEL 7 listing on AWS Marketplace
- An EC2 key pair for SSH access
- Familiarity with EC2 instance management and SSH
Recommended instance type: m5.large (2 vCPU, 8 GB RAM) or larger. The minimum requirements are 1 vCPU, 1 GB RAM and 20 GB of disk space. Oracle Database benefits significantly from additional memory for production workloads.
Launch the AMI
- Open the AWS Marketplace and search for "Oracle Database 19c Enterprise OEL 7 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 instance configuration.
- Select your instance type (
m5.largeis recommended). - Configure storage: 20 GB gp3 minimum for the root volume, plus the dedicated /u01 Oracle volume.
- Configure your Security Group with the inbound rules below.
Inbound rules (port, protocol, source, purpose):
22 TCP Your IP SSH access
1521 TCP Your IP Oracle Database Listener port
Important: Restrict port 1521 to trusted application servers or your own IP. Do not open the Oracle Listener port to the public internet.
- Select your EC2 key pair and launch the instance.
Connect over 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>Switch to the root user:
sudo su -Important: Wait for the instance to reach 2/2 successful status checks before you connect. Early connection attempts may fail with permission denied errors while the instance is still initialising.
Switch to the oracle user
The Oracle software is owned by the dedicated oracle OS user. Switch to this user to manage the database. Type the command rather than pasting it:
sudo su - oracleThree scripts are available in the oracle user's home directory:
- setEnv.sh sets the Oracle environment variables, which enables utilities such as sqlplus.
- start_all.sh starts the ORCL sample database and its associated Oracle Listener.
- stop_all.sh stops the ORCL sample database and its associated Oracle Listener.
Start the Oracle Database and Listener
As the oracle user, start the sample database and listener:
cd $HOME . ./start_all.shThe output looks like this:
LSNRCTL for Linux: Version 19.0.0.0.0 - Production Starting /u01/app/oracle/product/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 19.0.0.0.0 - Production Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=ip-x-x-x-x.ec2.internal)(PORT=1521))) The command completed successfully SQL*Plus: Release 19.0.0.0.0 Production Connected to an idle instance. SQL> ORACLE instance started. Database mounted. Database opened.Connect with SQL*Plus
Set the Oracle environment variables and start SQL*Plus:
cd $HOME . ./setEnv.sh sqlplus / as sysdbaThe output looks like this:
SQL*Plus: Release 19.0.0.0.0 Production Copyright (c) 1982, 2019, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Release 19.3.0.0.0 - 64bit Production With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options SQL>Type EXIT to leave the SQL*Plus session.
Connect remotely with SQL Developer
To connect from an external tool such as SQL Developer, use these connection settings:
Database Type Oracle
Authentication Type Default
Username SYSTEM
Password See credentials file below
Connection Type Basic
Hostname Your instance public IP
Port 1521
Service Name orcl.us.oracle.com
Note: The SYSTEM user password is in the randomly generated credentials file at /stage/scripts/oracle-database-credentials.log.
Server components
Components, with version and install path:
Oracle Database 19c Enterprise 19.3.0.0.0 /u01
Note: The automatic OS package update script can update component versions on first boot.
Filesystem layout
Mount points, with size and description:
/ 38 GB Root filesystem
/boot 2.0 GB Operating system kernel files
/u01 20 GB Oracle software installation directory
Key Oracle directories, with purpose:
/u01/app/oracle Oracle base directory
/u01/app/oracle/product Oracle software home
/u01/app/oracle/product/network/admin Listener and TNS configuration files
/u01/app/oracle/diag Oracle diagnostic and alert log files
Manage the Oracle Database
You manage the Oracle Database with the shell scripts in the oracle user's home directory. The database does not use systemd services.
Start the database and listener:
sudo su - oracle cd $HOME . ./start_all.shStop the database and listener:
sudo su - oracle cd $HOME . ./stop_all.shCheck the listener status:
sudo su - oracle cd $HOME . ./setEnv.sh lsnrctl statusScripts and log files
Scripts and logs, with path and description:
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
oracle-database-credentials.log /stage/scripts Oracle Database SYSTEM user credentials
setEnv.sh /home/oracle Sets Oracle environment variables for sqlplus and other tools
start_all.sh /home/oracle Starts the ORCL database and Oracle Listener
stop_all.sh /home/oracle Stops the ORCL database and Oracle Listener
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
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.
Oracle Listener fails to start
- Switch to the oracle user:
sudo su - oracle - Source the environment:
. ./setEnv.sh - Check the listener status:
lsnrctl status - Review the listener log at
/u01/app/oracle/diag/tnslsnr/<hostname>/listener/alert/log.xml. - Verify that no other process is using port 1521:
netstat -tlnp | grep 1521
Database fails to start
- Switch to the oracle user and source the environment.
- Connect to SQL*Plus:
sqlplus / as sysdba - Check the instance status:
SELECT STATUS FROM V\$INSTANCE; - Try starting it manually:
STARTUP; - Review the alert log at
/u01/app/oracle/diag/rdbms/orcl/ORCL/trace/alert_ORCL.log.
Cannot connect remotely on port 1521
- Verify that the Oracle Listener is running:
lsnrctl status - Confirm that your security group allows inbound TCP port 1521 from your IP.
- Test connectivity:
telnet <instance-ip> 1521 - Check that the listener.ora file references the correct hostname.
Security notes
- Restrict port access. Allow port 1521 only from trusted application servers or specific IP addresses.
- Change default passwords. Update the SYSTEM and SYS user passwords immediately after your first login.
- Use strong passwords. Make sure all database user passwords meet complexity requirements.
- Enable auditing. Configure Oracle Database auditing to track access and changes.
- Encrypt connections. Configure Oracle Net Services to use SSL/TLS encryption for client connections.
- Limit OS access. Restrict SSH access to authorised administrators only.
- Review user privileges. Remove unnecessary grants and follow the principle of least privilege.
- Keep the system updated. Apply Oracle Critical Patch Updates and OS security patches regularly.
Support
If you have any issue with this product, contact SecureAnyCloud support:
- Email: sales@secureanycloud.com
- Website: secureanycloud.com
- Support hours: 24/7, with a guaranteed 24 hour response SLA
Deploy on AWS
Launch Oracle Database 19c Enterprise on OEL 7 with 24/7 support from SecureAnyCloud.
View on Marketplace
Need Help?
Our support team is available 24/7.
sales@secureanycloud.com