Monday, November 27, 2023

Oracle 19c Silent Installation Step by Step on RHEL with Two PDBs



Prerequisites

Before you begin the silent installation of Oracle 19c on RHEL with two PDBs, you will need to ensure that your system meets the following prerequisites:

  • Operating System: Red Hat Enterprise Linux (RHEL) 7 or 8
  • Memory: At least 16GB of RAM
  • Disk Space: At least 40GB of free disk space
  • User: A non-root user with sudo privileges

Step 1: Download Oracle 19c Software

  1. Download the Oracle 19c software from the Oracle Technology Network (OTN) website.
  2. Extract the downloaded software to a convenient location on your system.

Step 2: Create Installation Directories

  1. Create the following directories for the Oracle 19c installation:
/u01/app/oracle/product
/u02/oradata
  1. Set the ownership of the directories to the oracle user and group:
chown -R oracle:oinstall /u01/app/oracle/product
chown -R oracle:oinstall /u02/oradata

Step 3: Create Oracle User and Group

  1. Create the oracle user and group:
groupadd oinstall
useradd -g oinstall -M oracle
  1. Set the password for the oracle user:
passwd oracle

Step 4: Configure SELinux

  1. Edit the /etc/selinux/config file and set SELINUX=permissive:
SELINUX=permissive
  1. Save the file and reboot your system:
reboot

Step 5: Disable Firewall

  1. Disable the firewall to allow Oracle to communicate with the outside world:
systemctl stop firewalld
systemctl disable firewalld

Step 6: Set Environment Variables

  1. Add the following environment variables to your ~/.bashrc file:
ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
ORACLE_SID=cStep 7: Unzip Oracle Software
  1. Unzip the Oracle 19c software into the ORACLE_HOME directory:
unzip <oracle_software_file_name> -d $ORACLE_HOMEStep 8: Create Database Configuration File
  1. Create a response file named db_install.rsp in the ORACLE_HOME/install/response directory:
vim db_install.rsp
  1. Add the following parameters to the db_install.rsp file:
[GENERAL]
INSTALL_TYPE=EE
DECLINE_AUTO_CONFIG=true

[DATABASE]
SID=orcl
GLOBAL_NAMES=false
CHARACTERSET=AL32UTF8

[MULTI_PDB]
PDB_NAME=PDB1
PDB_CREATE_AS_SYSDBA=true
PDB_MEMORY_SIZE=2048MB

[MULTI_PDB]
PDB_NAME=PDB2
PDB_CREATE_AS_SYSDBA=true
PDB_MEMORY_SIZE=2048MB
  1. Save and close the db_install.rsp file.

Step 9: Run Oracle Universal Installer (OUI)

  1. Navigate to the ORACLE_HOME directory:
cd $ORACLE_HOME
  1. Run the OUI in silent mode using the following command:
./runInstaller -silent -responseFile db_install.rsp -executeConfig

Step 10: Create PDBs Using Commands

  1. After the installation is complete, you can create the two PDBs using the following commands:
sqlplus / as sysdba << EOF
CREATE PLUGGABLE DATABASE pdb1
  TEMPLATE=orcl;

CREATE PLUGGABLE DATABASE pdb2
  TEMPLATE=orcl;
EOF
  1. To mount the PDBs, run the following commands:
sqlplus / as sysdba << EOF
ALTER PLUGGABLE DATABASE pdb1 MOUNT;
ALTER PLUGGABLE DATABASE pdb2 MOUNT;
EOF
  1. Connect to each PDB as SYSDBA and create the necessary tablespaces and users:
sqlplus / as sysdba << EOF
CONNECT / AS SYSDBA;
CREATE TABLESPACE pdb1_tbs DATAFILE '/u02/oradata/pdb1/pdb1_tbs.dbf' SIZE 10M;
CREATE USER pdb1_user IDENTIFIED BY pdb1_password;
GRANT CONNECT, CREATE SESSION, CREATE TABLE TO pdb1_user;
EOF

sqlplus / as sysdba << EOF
CONNECT / AS SYSDBA;
CREATE TABLESPACE pdb2_tbs DATAFILE '/u02/oradata/pdb2/pdb2_tbs.dbf' SIZE 10M;
CREATE USER pdb2_user IDENTIFIED BY pdb2_password;
GRANT CONNECT, CREATE SESSION, CREATE TABLE TO pdb2_user;
EOF

Congratulations! You have successfully installed Oracle 19c on RHEL with two PDBs and created the necessary tablespaces and users for each PDB.


Looking forward for your suggestions.. please feel free to write to me.. Your help would definitely help to improve our blog. Chetan Yadav

Sunday, November 26, 2023

Migrating Oracle 12c on-premises to AWS Cloud Oracle 19c: A Comprehensive Guide



In today's dynamic business landscape, organizations are increasingly embracing cloud-based solutions to enhance agility, scalability, and cost-efficiency. Oracle Database, a widely used enterprise database management system, offers various cloud migration options to seamlessly transition from on-premises environments to the cloud.

Migrating an Oracle 12c database from on-premises to AWS Cloud Oracle 19c is a strategic decision that can bring numerous benefits, including improved performance, enhanced availability, reduced infrastructure costs, and simplified management. This comprehensive guide outlines the technical steps involved in this migration process, providing valuable insights for organizations embarking on this journey.

Planning: Establishing the Foundation for Success

  1. Define Requirements and Goals: Clearly articulate the business objectives and technical requirements for the migration, considering critical aspects such as performance, availability, and cost optimization.
  2. Assess Source Environment: Thoroughly analyze the on-premises Oracle 12c database, including its size, configuration, dependencies, and application interactions.
  3. Choose Migration Strategy: Select the most appropriate migration approach based on the specific needs of the organization. Common strategies include Oracle Data Pump, Oracle GoldenGate, and AWS Database Migration Service (DMS).
  4. Design Target Environment: Plan the target AWS Cloud infrastructure, including the Oracle 19c database instance type, storage options, and network connectivity.

Preparation: Setting the Stage for a Smooth Transition

  1. Establish AWS Account and IAM Roles: Create an AWS account with necessary IAM roles and permissions to facilitate the migration process.
  2. Provision AWS Resources: Create the requisite AWS resources, including VPC, subnets, security groups, and an Oracle 19c database instance.
  3. Configure Network Connectivity: Establish network connectivity between the on-premises environment and AWS Cloud environment using a VPN or AWS Direct Connect.
  4. Prepare Data Pump Export: Generate an Oracle Data Pump export from the on-premises Oracle 12c database to a staging location, such as an Amazon S3 bucket.

Migration: The Heart of the Transformation

  1. Transfer Data to AWS: Efficiently transfer the Oracle Data Pump export to AWS Cloud storage, such as Amazon S3 or an Amazon Elastic Block Store (EBS) volume.
  2. Import Data into Oracle 19c: Seamlessly import the Oracle Data Pump export into the AWS Oracle 19c database instance, ensuring data integrity.
  3. Configure Oracle 19c Database: Perform necessary configuration tasks on the Oracle 19c database instance, including parameter adjustments, network configuration, and application connectivity setup.
  4. Validate Application Compatibility: Conduct thorough application testing to ensure compatibility with the migrated Oracle 19c database, guaranteeing seamless application functionality.

Validation: Ensuring Success and Reliability

  1. Evaluate Performance: Conduct comprehensive performance testing to compare the migrated Oracle 19c database to the on-premises Oracle 12c database in terms of response times, throughput, and resource utilization.
  2. Verify Data Integrity: Validate data integrity and consistency between the on-premises and migrated Oracle databases, ensuring data accuracy and reliability.
  3. Test Application Functionality: Run rigorous functional and regression testing to guarantee that applications are functioning correctly with the migrated Oracle 19c database, eliminating any potential issues.
  4. Cutover and Decommissioning: Once validation is complete, perform a cutover to switch traffic to the migrated Oracle 19c database and decommission the on-premises Oracle 12c database in a controlled manner.

Conclusion: Embracing the Cloud with Confidence

Migrating an Oracle 12c database from on-premises to AWS Cloud Oracle 19c is a strategic step towards achieving cloud-based agility, scalability, and cost-efficiency. By following a well-structured approach, organizations can successfully navigate this migration process, ensuring minimal disruptions and maximizing the benefits of cloud adoption.






Looking forward to your suggestions.. please feel free to write to me.. Your help would definitely help to improve our blog. Chetan Yadav

Tuesday, May 23, 2023

Step-by-step instructions and commands for migrating an on-premises Oracle database to Amazon RDS for Oracle:


 Step-by-step instructions and commands for migrating an on-premises Oracle database to Amazon RDS for Oracle:

1. Set up an Amazon RDS for Oracle instance:
   - Log in to the AWS Management Console.
   - Navigate to the Amazon RDS service and click on "Create database."
   - Select the Oracle database engine and specify the desired configuration and settings.

2. Prepare the on-premises Oracle database:
   - Ensure the on-premises database is compatible with the target version of Amazon RDS.
   - Perform any necessary schema or data modifications required for compatibility.

3. Take a backup of the on-premises Oracle database:
   - Use the Oracle Export utility (expdp) or any other backup method to create a full database backup.

4. Create a secure connection between the on-premises environment and Amazon RDS:
   - Set up a Virtual Private Cloud (VPC) in AWS.
   - Configure a VPN or Direct Connect to establish a secure network connection.

5. Restore the database backup to the Amazon RDS instance:
   - Use the Oracle Import utility (impdp) to import the backup into the Amazon RDS for Oracle instance.

6. Perform necessary configuration and parameter adjustments:
   - Connect to the Amazon RDS instance using SQL*Plus or any Oracle client.
   - Modify initialization parameters, tablespaces, users, and other database settings as required.

7. Test the migrated database:
   - Run queries, perform transactions, and verify the data integrity and functionality.

8. Update applications and systems:
   - Modify application configurations and connection strings to point to the new Amazon RDS instance.

9. Monitor and optimize performance:
   - Use AWS CloudWatch or other monitoring tools to monitor database performance.
   - Fine-tune configuration parameters and apply optimizations as needed.

10. Decommission the on-premises Oracle database:
    - Ensure all necessary data is migrated and verified on the Amazon RDS instance.
    - Safely shut down and decommission the on-premises Oracle database.




Looking forward for your suggestions.. please feel free to write to me.. Your help would definitely help to improve our blog. Chetan Yadav

Monday, May 1, 2023

Pre-Checks for Oracle 19c to PostgreSQL Migration




Migrating from one database management system to another is a complex task that requires careful planning and execution. If you are planning to migrate your data from Oracle 19c to PostgreSQL, there are several pre-checks that you should perform to ensure a successful migration. In this post, we will discuss some of the pre-checks that you should consider before migrating from Oracle 19c to PostgreSQL.

  1. Data Type Compatibility The first pre-check that you should perform is to ensure that the data types used in Oracle 19c are compatible with PostgreSQL. PostgreSQL supports most of the data types used in Oracle 19c, but there are some differences in the way they are implemented. For example, Oracle 19c supports the BLOB data type, whereas PostgreSQL supports the BYTEA data type. You should review your database schema and make sure that all the data types used in Oracle 19c are supported in PostgreSQL.

  2. Indexes and Constraints PostgreSQL supports both unique and non-unique indexes, whereas Oracle 19c supports only unique indexes. You should review your database schema and make sure that all the indexes and constraints are supported in PostgreSQL. You should also make sure that the indexes and constraints are not causing any performance issues in Oracle 19c.

  3. Stored Procedures and Functions PostgreSQL supports stored procedures and functions, but the syntax used is different from that used in Oracle 19c. You should review your stored procedures and functions and make sure that they are compatible with PostgreSQL. You should also make sure that the stored procedures and functions are not causing any errors or performance issues in Oracle 19c.

  4. Security and Authentication PostgreSQL has a different security and authentication model compared to Oracle 19c. You should review your security and authentication settings and make sure that they are compatible with PostgreSQL. You should also make sure that your data is secure during the migration process.

  5. Performance Testing Before migrating your data from Oracle 19c to PostgreSQL, you should perform performance testing to ensure that the new database management system can handle your workload. You should also make sure that your queries are optimized for PostgreSQL.

In conclusion, migrating from Oracle 19c to PostgreSQL requires careful planning and execution. By performing the pre-checks mentioned above, you can ensure a successful migration.



Looking forward for your suggestions.. please feel free to write to me.. Your help would definitely help to improve our blog. Chetan Yadav