This document provides an overview of Oracle 12c Pluggable Databases (PDBs). Key points include:
- PDBs allow multiple databases to be consolidated within a single container database (CDB), providing benefits like faster provisioning and upgrades by doing them once per CDB.
- Each PDB acts as an independent database with its own data dictionary but shares resources like redo logs at the CDB level. PDBs can be unplugged from one CDB and plugged into another.
- Hands-on labs demonstrate how to create, open, clone, and migrate PDBs between CDBs. The document also compares characteristics of CDBs and PDBs and shows how a non-C
Collaborate 17 - Database consolidation using the oracle multitenant architec...Pini Dibask
The document provides an overview of database consolidation using Oracle Multitenant architecture. It discusses challenges with prior consolidation approaches and how Multitenant addresses these. Key concepts covered include pluggable databases, container databases, and resource management capabilities at the CDB and PDB level. The document also discusses how Multitenant supports high availability features like RAC and performance monitoring tools like AWR.
This document discusses connecting to a Container Database (CDB) and pluggable databases (PDBs) in Oracle Database 12c. It covers how to connect to the CDB root and PDBs using services, and how connections are unchanged from previous versions. It also discusses users, grants, and roles in a CDB, including how users can be common or local, and how roles can be common or local. It provides examples of how to create common and local users and roles.
OOW 17 - database consolidation using the oracle multitenant architecturePini Dibask
This document discusses database consolidation using Oracle Multitenant. It begins with an introduction to multitenant architecture and concepts. It then covers ensuring quality of service in multitenant environments using Oracle Resource Manager. The document also discusses using RAC with multitenant databases and performance monitoring for multitenant environments.
New features in Oracle Database 12c include the ability to restore tables and partitions using RMAN backups. A table or partition recovery using RMAN will identify required backups, construct an auxiliary database temporarily, export the table/partition to a dump file, and optionally import the table/partition back into the source database. It is also now possible to execute SQL statements directly in RMAN without using a SQL prefix. Additionally, DDL statements can now be logged to XML and log files when DDL logging is enabled. Data files can also be renamed or relocated online using the ALTER DATABASE statement in 12c.
This document provides an overview of Oracle 12c Pluggable Databases (PDBs). Key points include:
- PDBs allow multiple databases to be consolidated within a single container database (CDB), providing benefits like faster provisioning and upgrades by doing them once per CDB.
- Each PDB acts as an independent database with its own data dictionary but shares resources like redo logs at the CDB level. PDBs can be unplugged from one CDB and plugged into another.
- Hands-on labs demonstrate how to create, open, clone, and migrate PDBs between CDBs. The document also compares characteristics of CDBs and PDBs and shows how a non-C
Collaborate 17 - Database consolidation using the oracle multitenant architec...Pini Dibask
The document provides an overview of database consolidation using Oracle Multitenant architecture. It discusses challenges with prior consolidation approaches and how Multitenant addresses these. Key concepts covered include pluggable databases, container databases, and resource management capabilities at the CDB and PDB level. The document also discusses how Multitenant supports high availability features like RAC and performance monitoring tools like AWR.
This document discusses connecting to a Container Database (CDB) and pluggable databases (PDBs) in Oracle Database 12c. It covers how to connect to the CDB root and PDBs using services, and how connections are unchanged from previous versions. It also discusses users, grants, and roles in a CDB, including how users can be common or local, and how roles can be common or local. It provides examples of how to create common and local users and roles.
OOW 17 - database consolidation using the oracle multitenant architecturePini Dibask
This document discusses database consolidation using Oracle Multitenant. It begins with an introduction to multitenant architecture and concepts. It then covers ensuring quality of service in multitenant environments using Oracle Resource Manager. The document also discusses using RAC with multitenant databases and performance monitoring for multitenant environments.
New features in Oracle Database 12c include the ability to restore tables and partitions using RMAN backups. A table or partition recovery using RMAN will identify required backups, construct an auxiliary database temporarily, export the table/partition to a dump file, and optionally import the table/partition back into the source database. It is also now possible to execute SQL statements directly in RMAN without using a SQL prefix. Additionally, DDL statements can now be logged to XML and log files when DDL logging is enabled. Data files can also be renamed or relocated online using the ALTER DATABASE statement in 12c.
RMOUG 18 - Winning Performance Challenges in Oracle MultitenantPini Dibask
This document discusses winning performance challenges in Oracle Multitenant environments. It begins with introducing the speaker, Pini Dibask, who is a Product Manager for Database Tools at Quest Software. It then provides an overview of Quest Software and their database management solutions. The remainder of the document outlines the agenda, which includes introductions to database consolidation, Oracle Multitenant concepts, ensuring quality of service in multitenant environments, RAC and multitenancy, and performance monitoring for multitenant environments.
Winning performance challenges in oracle multitenantPini Dibask
This document provides an overview of winning performance challenges in Oracle Multitenant environments. It discusses Oracle Multitenant concepts, ensuring quality of service in multitenant databases, using RAC with multitenant, and performance monitoring for multitenant databases. The speaker is Pini Dibask, Product Manager for Database Monitoring at Quest Software.
Winning Performance Challenges in Oracle MultitenantPini Dibask
Pini Dibask, a senior product manager at Quest Software, gave a presentation on winning performance challenges in Oracle Multitenant. The presentation covered Oracle Multitenant concepts, ensuring quality of service in multitenant environments through resource management, using RAC with multitenant, and performance monitoring tools. It discussed how Oracle Resource Manager can be used to allocate resources between pluggable databases at the container database level. The presentation also showed how tools from Quest such as Foglight can provide performance monitoring across multiple databases.
OUGN winning performnace challenges in oracle MultitenantPini Dibask
This document provides an overview and introduction to Oracle 12c Multitenant architecture. It discusses key features such as pluggable databases (PDBs), container databases (CDBs), and the benefits of consolidation. The document also covers best practices for ensuring quality of service (QoS) between PDBs using resource management. It describes using the Oracle resource manager to allocate resources at the CDB and PDB level. Lastly, it summarizes performance monitoring in multitenant environments with Automatic Workload Repository (AWR) functionality in 12c Release 1 and 2.
What is new on 12c for Backup and Recovery? PresentationFrancisco Alvarez
Francisco Munoz Alvarez is an Oracle ACE Director and president of several Oracle user groups. He has many Oracle certifications and experience beta testing various Oracle products.
The presentation covers new features in Oracle Database 12c for backup and recovery including the multitenant container database, enhancements to RMAN and Data Pump, and changes to privileges for backups. It also discusses pluggable databases, container and PDB backup/restore, multisection backups, active duplicate, and SQL usage in RMAN.
New Features for Multitenant in Oracle Database 21cMarkus Flechtner
Oracle Database 21c introduces several new features for multitenant databases:
- PDBs can now be upgraded automatically when plugged into a 21c CDB or opened, replaying the upgrade process.
- Resource management is improved with options like mandatory user profiles, per-PDB database resident connection pooling, and Oracle DB Nest for isolating PDBs using Linux namespaces and cgroups.
- Multitenant enhancements for high availability include PDBs being managed as cluster resources and improved PDB-level recovery when using Active Data Guard.
Database Consolidation using the Oracle Multitenant ArchitecturePini Dibask
The document discusses Oracle's Multitenant architecture, which allows multiple pluggable databases (PDBs) to consolidate within a single multitenant container database (CDB). It describes how Multitenant provides advantages like simplified upgrades, cloning, and migration of PDBs. The document also covers ensuring quality of service for PDBs using resource management, and how RAC supports high availability and scalability in a Multitenant environment. It concludes with a discussion of performance monitoring of workloads across PDBs.
Oracle Database 12c introduces several new features including pluggable databases (PDB) that allow multiple isolated databases to be consolidated within a single container database (CDB). It also introduces new administrative privileges (SYSBACKUP, SYSDG, SYSKM) and features such as transparent data encryption, invisible columns, object tables, and enhancements to RMAN and SQL.
Consolidate and prepare for cloud efficienciesDLT Solutions
The document discusses Oracle Database 12c's Multitenant option, which allows customers to consolidate databases in the cloud for efficiencies. It describes the multitenant architecture that enables shared resources across pluggable databases. This reduces costs while improving agility through fast provisioning and portability between databases. The document also covers managing a multitenant environment, upgrading to multitenancy, and provides several use cases such as database as a service.
Starting with 12c Release 1, Oracle introduced a completely new architecture concept for its database - the Container Database.
With this new architecture, new challenges came up but with the same breath a wide branch of new opportunities.
The presentation will address the capabilities to create fast and easy new (test) databases or clones for a running production database. Five different ways will be discussed.
- Using Local and Remote Cloning
- Using an Unplugged PDB (predefined master)
- Using Refreshable PDBs as a master for new (test) databases
- Snapshot Carousel
Another point of the agenda is the usage of the Snapshot features of ACFS and Direct NFS to speed up the creation process.
Exploring Oracle Database 12c Multitenant best practices for your Clouddyahalom
The document discusses best practices for Oracle Database 12c Multitenant architecture. It begins by introducing the speaker and their company Brillix-DBAces. It then provides an overview of the Multitenant Container Database architecture in 12c, including the root and pluggable database containers, common vs local users/roles/privileges, and tools for working with Container Databases like SQL*Plus, DBCA, and Enterprise Manager.
This document discusses upgrading to Oracle Database 19c and migrating to Oracle Multitenant. It provides an overview of key features such as being able to have 3 user-created PDBs without a Multitenant license in 19c. It also demonstrates how to use AutoUpgrade to perform an upgrade and migration to Multitenant with a single command. The document highlights various Multitenant concepts such as resource sharing, connecting to containers, and cloning PDBs.
This document provides instructions for replicating data from an Oracle multitenant container database (CDB) to another CDB using Oracle GoldenGate. It outlines prerequisites, tasks to prepare the databases and environment, and steps for initial load and ongoing replication of data changes in near real-time. Key steps include creating GoldenGate users, adding supplemental logging, configuring Extract and Replicat processes, and monitoring replication status. The goal is to familiarize the reader with setting up a basic Oracle to Oracle replication setup using GoldenGate in a multitenant environment.
Oracle Database 12c includes over 500 new features. Some key new features include:
- Oracle Database 12c Express (EM Express) which replaces Database Control and has less features than Database Control but does not require Java or an app server.
- New online capabilities like online DDL operations with no DDL locking, online move of partitions with no impact to queries, and online statistics gathering for bulk loads.
- Adaptive SQL Plan Management which allows the optimizer to select a more optimal plan at execution time based on current statistics.
- Multitenant architecture which allows consolidation of multiple databases into one container database with pluggable databases.
This document discusses migrating databases to Oracle's multitenant architecture. It begins with an overview of using AutoUpgrade to upgrade databases and then plugging them into a container database (CDB). It also covers concepts of Oracle Multitenant like pluggable databases (PDBs), resource sharing, and connecting to different containers. The document provides guidance on tasks like cloning PDBs, upgrading within a CDB, and migrating non-CDBs to PDBs.
What SQL DBAs need to know about SharePointJ.D. Wade
This document discusses what SQL DBAs need to know about implementing and managing SharePoint databases. It covers topics such as the SQL implementation challenges in SharePoint, recommended database configuration including storage, sizing, and high availability options. It also discusses maintenance best practices for SharePoint databases such as monitoring, integrity checks, index maintenance and shrinking databases. Upcoming enhancements in SharePoint 2010 that improve SQL integration are also mentioned.
The document discusses two options for achieving high availability for Oracle Database Standard Edition 2 (SE2):
1) Standard Edition High Availability (SEHA) provides an out-of-the-box failover cluster configuration using Oracle Grid Infrastructure that supports automatic failover between two nodes.
2) Using refreshable pluggable databases (PDBs) allows cloning a PDB from a primary database to a secondary database for read-only reporting or to refresh the secondary PDB periodically to propagate changes.
RMOUG 18 - Winning Performance Challenges in Oracle MultitenantPini Dibask
This document discusses winning performance challenges in Oracle Multitenant environments. It begins with introducing the speaker, Pini Dibask, who is a Product Manager for Database Tools at Quest Software. It then provides an overview of Quest Software and their database management solutions. The remainder of the document outlines the agenda, which includes introductions to database consolidation, Oracle Multitenant concepts, ensuring quality of service in multitenant environments, RAC and multitenancy, and performance monitoring for multitenant environments.
Winning performance challenges in oracle multitenantPini Dibask
This document provides an overview of winning performance challenges in Oracle Multitenant environments. It discusses Oracle Multitenant concepts, ensuring quality of service in multitenant databases, using RAC with multitenant, and performance monitoring for multitenant databases. The speaker is Pini Dibask, Product Manager for Database Monitoring at Quest Software.
Winning Performance Challenges in Oracle MultitenantPini Dibask
Pini Dibask, a senior product manager at Quest Software, gave a presentation on winning performance challenges in Oracle Multitenant. The presentation covered Oracle Multitenant concepts, ensuring quality of service in multitenant environments through resource management, using RAC with multitenant, and performance monitoring tools. It discussed how Oracle Resource Manager can be used to allocate resources between pluggable databases at the container database level. The presentation also showed how tools from Quest such as Foglight can provide performance monitoring across multiple databases.
OUGN winning performnace challenges in oracle MultitenantPini Dibask
This document provides an overview and introduction to Oracle 12c Multitenant architecture. It discusses key features such as pluggable databases (PDBs), container databases (CDBs), and the benefits of consolidation. The document also covers best practices for ensuring quality of service (QoS) between PDBs using resource management. It describes using the Oracle resource manager to allocate resources at the CDB and PDB level. Lastly, it summarizes performance monitoring in multitenant environments with Automatic Workload Repository (AWR) functionality in 12c Release 1 and 2.
What is new on 12c for Backup and Recovery? PresentationFrancisco Alvarez
Francisco Munoz Alvarez is an Oracle ACE Director and president of several Oracle user groups. He has many Oracle certifications and experience beta testing various Oracle products.
The presentation covers new features in Oracle Database 12c for backup and recovery including the multitenant container database, enhancements to RMAN and Data Pump, and changes to privileges for backups. It also discusses pluggable databases, container and PDB backup/restore, multisection backups, active duplicate, and SQL usage in RMAN.
New Features for Multitenant in Oracle Database 21cMarkus Flechtner
Oracle Database 21c introduces several new features for multitenant databases:
- PDBs can now be upgraded automatically when plugged into a 21c CDB or opened, replaying the upgrade process.
- Resource management is improved with options like mandatory user profiles, per-PDB database resident connection pooling, and Oracle DB Nest for isolating PDBs using Linux namespaces and cgroups.
- Multitenant enhancements for high availability include PDBs being managed as cluster resources and improved PDB-level recovery when using Active Data Guard.
Database Consolidation using the Oracle Multitenant ArchitecturePini Dibask
The document discusses Oracle's Multitenant architecture, which allows multiple pluggable databases (PDBs) to consolidate within a single multitenant container database (CDB). It describes how Multitenant provides advantages like simplified upgrades, cloning, and migration of PDBs. The document also covers ensuring quality of service for PDBs using resource management, and how RAC supports high availability and scalability in a Multitenant environment. It concludes with a discussion of performance monitoring of workloads across PDBs.
Oracle Database 12c introduces several new features including pluggable databases (PDB) that allow multiple isolated databases to be consolidated within a single container database (CDB). It also introduces new administrative privileges (SYSBACKUP, SYSDG, SYSKM) and features such as transparent data encryption, invisible columns, object tables, and enhancements to RMAN and SQL.
Consolidate and prepare for cloud efficienciesDLT Solutions
The document discusses Oracle Database 12c's Multitenant option, which allows customers to consolidate databases in the cloud for efficiencies. It describes the multitenant architecture that enables shared resources across pluggable databases. This reduces costs while improving agility through fast provisioning and portability between databases. The document also covers managing a multitenant environment, upgrading to multitenancy, and provides several use cases such as database as a service.
Starting with 12c Release 1, Oracle introduced a completely new architecture concept for its database - the Container Database.
With this new architecture, new challenges came up but with the same breath a wide branch of new opportunities.
The presentation will address the capabilities to create fast and easy new (test) databases or clones for a running production database. Five different ways will be discussed.
- Using Local and Remote Cloning
- Using an Unplugged PDB (predefined master)
- Using Refreshable PDBs as a master for new (test) databases
- Snapshot Carousel
Another point of the agenda is the usage of the Snapshot features of ACFS and Direct NFS to speed up the creation process.
Exploring Oracle Database 12c Multitenant best practices for your Clouddyahalom
The document discusses best practices for Oracle Database 12c Multitenant architecture. It begins by introducing the speaker and their company Brillix-DBAces. It then provides an overview of the Multitenant Container Database architecture in 12c, including the root and pluggable database containers, common vs local users/roles/privileges, and tools for working with Container Databases like SQL*Plus, DBCA, and Enterprise Manager.
This document discusses upgrading to Oracle Database 19c and migrating to Oracle Multitenant. It provides an overview of key features such as being able to have 3 user-created PDBs without a Multitenant license in 19c. It also demonstrates how to use AutoUpgrade to perform an upgrade and migration to Multitenant with a single command. The document highlights various Multitenant concepts such as resource sharing, connecting to containers, and cloning PDBs.
This document provides instructions for replicating data from an Oracle multitenant container database (CDB) to another CDB using Oracle GoldenGate. It outlines prerequisites, tasks to prepare the databases and environment, and steps for initial load and ongoing replication of data changes in near real-time. Key steps include creating GoldenGate users, adding supplemental logging, configuring Extract and Replicat processes, and monitoring replication status. The goal is to familiarize the reader with setting up a basic Oracle to Oracle replication setup using GoldenGate in a multitenant environment.
Oracle Database 12c includes over 500 new features. Some key new features include:
- Oracle Database 12c Express (EM Express) which replaces Database Control and has less features than Database Control but does not require Java or an app server.
- New online capabilities like online DDL operations with no DDL locking, online move of partitions with no impact to queries, and online statistics gathering for bulk loads.
- Adaptive SQL Plan Management which allows the optimizer to select a more optimal plan at execution time based on current statistics.
- Multitenant architecture which allows consolidation of multiple databases into one container database with pluggable databases.
This document discusses migrating databases to Oracle's multitenant architecture. It begins with an overview of using AutoUpgrade to upgrade databases and then plugging them into a container database (CDB). It also covers concepts of Oracle Multitenant like pluggable databases (PDBs), resource sharing, and connecting to different containers. The document provides guidance on tasks like cloning PDBs, upgrading within a CDB, and migrating non-CDBs to PDBs.
What SQL DBAs need to know about SharePointJ.D. Wade
This document discusses what SQL DBAs need to know about implementing and managing SharePoint databases. It covers topics such as the SQL implementation challenges in SharePoint, recommended database configuration including storage, sizing, and high availability options. It also discusses maintenance best practices for SharePoint databases such as monitoring, integrity checks, index maintenance and shrinking databases. Upcoming enhancements in SharePoint 2010 that improve SQL integration are also mentioned.
The document discusses two options for achieving high availability for Oracle Database Standard Edition 2 (SE2):
1) Standard Edition High Availability (SEHA) provides an out-of-the-box failover cluster configuration using Oracle Grid Infrastructure that supports automatic failover between two nodes.
2) Using refreshable pluggable databases (PDBs) allows cloning a PDB from a primary database to a secondary database for read-only reporting or to refresh the secondary PDB periodically to propagate changes.
Similar to Using PDB Relocation to Move a Single PDB to Another Existing CDB (20)
1) The document discusses Oracle ASM Filter Driver (ASMFD), ASMLIB, and how they relate to managing I/O for Oracle databases on Linux. ASMFD replaces ASMLIB, providing persistent device naming and preventing accidental overwrites of Oracle disks.
2) It provides information on when and how to use ASM with and without ASMLIB, alternatives to each, and how to configure Oracle single-instance and RAC databases with and without ASM and ASMLIB. Configuration without these components can use filesystems, LVM, or third-party cluster file systems instead.
Recovering a Oracle datafile without backup.pdfAlireza Kamrani
This document describes how to recover an Oracle database file without a backup by:
1. Creating an empty file with the same size as the damaged file using ALTER DATABASE.
2. Performing media recovery on the empty file to apply archived redo logs and restore the data.
3. After recovery, the database can be opened with a resetlogs.
♨️How To Use DataPump (EXPDP) To Export From Physical Standby….pdfAlireza Kamrani
This document provides steps to successfully export data from a physical standby database using Data Pump Export (EXPDP). It explains that EXPDP cannot be run directly on the physical standby due to its read-only status, so a database link must be used to connect from a non-standby database. The physical standby must be opened in read-only mode before exporting. Example commands are given to create a database link, open the physical standby read-only, and run EXPDP with the NETWORK_LINK parameter to export the data. Common errors that can occur without using these steps are also described.
♨️CPU limitation per Oracle database instanceAlireza Kamrani
Cgroups improve database performance by associating a dedicated set of CPUs and memory to a database instance, limiting each instance to only those resources. The setup_processor_group.sh script is used to create cgroups on Linux systems. To bind a database instance to a cgroup, the PROCESSOR_GROUP_NAME parameter must be set to the cgroup name and the instance restarted. Best practices include configuring cgroups out of CPU threads from minimum cores/sockets and creating cgroups with at least 2 CPU cores.
Out-of-Place Oracle Database Patching and Provisioning Golden ImagesAlireza Kamrani
Out-of-place Oracle database patching involves creating a new Oracle Home, applying patches to it, and updating the Oracle Inventory. Golden images can then be created by cloning an existing Oracle Home or Grid Home. Additional Oracle features can be provisioned using the -apply_ru option after applying patches to the golden image. These techniques help minimize downtime and maintain consistency when upgrading Oracle databases.
IO Schedulers (Elevater) concept and its affection on database performanceAlireza Kamrani
I/O schedulers in Linux reorder and group I/O requests to improve throughput while balancing latency. Different schedulers take different approaches, and there is no single best scheduler for all situations. For Oracle databases on Linux, Oracle recommends using the Deadline scheduler for HDD storage to prioritize I/O requests, while the none scheduler may be best for SSD/NVMe storage. When selecting a scheduler, it is important to consider the storage media and I/O characteristics of the workload.
The Fundamental Characteristics of Storage concepts for DBAsAlireza Kamrani
The document discusses key storage concepts for database administrators including latency, IOPS, and bandwidth. Latency refers to the delay in a storage system's response to an I/O request, typically measured in milliseconds for disk and microseconds for flash. IOPS represents the number of input/output operations per second a storage system can support. Bandwidth refers to the amount of data that can be transferred per second, measured in megabytes or gigabytes per second. These concepts are related, as IOPS and latency increase as storage systems approach maximum throughput. It is important for DBAs to understand how applications will impact I/O patterns in terms of these concepts when choosing appropriate storage solutions.
What is Scalability and How can affect on overall system performance of databaseAlireza Kamrani
Scalability refers to a system's ability to handle increased workload by proportionally increasing resource usage. Poor scalability can occur due to resource conflicts like locking, consistency work, I/O, or queries that don't scale well. Systems become unscalable if a resource is exhausted, limiting throughput and response times. There are two types of scaling: vertical involves more powerful hardware, while horizontal adds more nodes without changing individual nodes. Sharding distributes data across partitions to improve performance and storage limits by scaling out horizontally.
🏗️Improve database performance with connection pooling and load balancing tec...Alireza Kamrani
This document discusses improving database performance through connection pooling and load balancing. It describes how connection pooling reuses database connections to optimize performance as traffic and clients grow. It then summarizes several Oracle and MySQL/MariaDB solutions for connection pooling and load balancing, including Oracle Traffic Director, Oracle Connection Manager, MariaDB MaxScale, and ProxySQL. These solutions can distribute database requests, provide high availability, and monitor performance.
Lock-free reservations is a new Oracle Database 23c feature that allows concurrent transactions to modify the same data without blocking each other. It does this by reserving rows for updates rather than locking them, and verifies that the updates can succeed at commit time. This improves concurrency and user experience over traditional locking. Lock-free reservations can be used for applications that manage shared resources like tickets, seats, or balances to allow high concurrency without sessions hanging. It works by having the database track reservations in a temporary journal table rather than locking data.
Store non-structured data in JSON column types and enhancements of JSONAlireza Kamrani
The document discusses features and enhancements for working with JSON data in Oracle databases. It describes how JSON can be stored in a JSON column type or text-based columns like CLOB. Validation functions are introduced in Oracle 23c to check JSON data for compatibility with the JSON type and validate against schemas. The document provides examples of converting text-based JSON columns to the JSON type and using the new validation functions.
Enhancements in Oracle 23c Introducing the NewOld Returning ClauseAlireza Kamrani
The document discusses Oracle 23c's enhanced Returning Clause feature for DML statements. Key points:
1) The Returning Clause now allows developers to retrieve both new and old column values for UPDATE statements, making it consistent across DML types. Previously only new values could be easily retrieved.
2) For INSERT statements, only new column values are returned, while DELETE statements return only old column values.
3) This feature streamlines application development by simplifying how developers retrieve pre- and post-operation data values from DML statements.
PostgreSQL and Oracle are both relational database management systems, but they differ in several key areas. PostgreSQL uses CTIDs to track rows, while Oracle uses ROWIDs. PostgreSQL uses MVCC for concurrency control and automatic vacuuming for disk space management, while Oracle uses undo space management. PostgreSQL configuration files include postgresql.conf and pg_hba.conf, analogous to Oracle's spfile and listener configuration files. Some other differences include how each handles write-ahead logs, database objects, backup and restore, and system monitoring. While not identical, both aim to provide robust relational database functionality.
We are pleased to share with you the latest VCOSA statistical report on the cotton and yarn industry for the month of March 2024.
Starting from January 2024, the full weekly and monthly reports will only be available for free to VCOSA members. To access the complete weekly report with figures, charts, and detailed analysis of the cotton fiber market in the past week, interested parties are kindly requested to contact VCOSA to subscribe to the newsletter.
We are pleased to share with you the latest VCOSA statistical report on the cotton and yarn industry for the month of May 2024.
Starting from January 2024, the full weekly and monthly reports will only be available for free to VCOSA members. To access the complete weekly report with figures, charts, and detailed analysis of the cotton fiber market in the past week, interested parties are kindly requested to contact VCOSA to subscribe to the newsletter.
Using PDB Relocation to Move a Single PDB to Another Existing CDB
1. 🔴 Using PDB Relocation to Move a Single PDB to
Another Existing CDB.
Purpose of PDB Relocation
This technique is the fastest way to move a PDB with minimal or no down time. Otherwise,
unplugging the source PDB requires a PDB outage until the PDB is plugged in to the target CDB.
2. When moving a PDB between data centers, or from an on-premises environment to a cloud
environment, all the data must physically move. For large PDBs, this process may take
considerable time, possibly violating availability components of an SLA. PDB relocation eliminates
the outage completely. You can relocate the PDB without taking the application o
ffl
ine, changing
the application, or changing network connection strings.
Overview of Plug & Play features on PDBs:
With the release of Oracle Multitenant, one of the main bene
fi
ts is the portability of each individual
Pluggable Database (PDB).
It is possible to move the self-contained contents of a single PDB from one Container Database
(CDB) to another.
In the initial release of Oracle RDBMS 12cR1 this required the PDB to be unplugged from the
source CDB and plugged into the destination CDB which could have the potential for extensive
downtime.
With 12cR2 the concept of PDB Relocation was introduced, allowing movement of a PDB from
one container to another through two SQL commands where the physical copy of the
fi
les is
performed while the source PDB remains accessible to users and applications.
The
fi
nal phase of relocation introduces a short downtime of less than 10 minutes to complete the
operation.
The primary use cases for PDB Relocation are from a planned maintenance perspective:
•Performing load balancing by moving a PDB and its associated resource utilization to a new
CDB/host.
•Changing High Availability (HA) tiers for the PDB, such as moving from a lower service level
requirement tier to a higher one.
•A
ff
ecting an upgrade of an individual PDB while leaving all existing PDBs at the existing
version.
Each of these operations is a physical move of the PDB from one container to another.
There is no reorganization of the PDB or its data as part of this move.
This post will explain the process for relocating a PDB with minimal down time, describing:
•Prerequisites for relocate
•Preparation steps
•The steps performed during the two phases of relocation
•Post relocation steps
🚩 SOLUTION🚩
Prerequisites
•The source and destination CDBs must be Oracle Database 12cR2 or later.
It is highly recommended they are Oracle Database 19c or later.
•The source and destination CDBs platforms must be same endian type.
•The source CDB must be in ARCHIVELOG mode.
•Apply the following patches to the Oracle Homes for both the source and destination container
databases (CDBs):
◦Required
▪ Patch 29469563 – Fixes an issue where PDB hot clones fail with ORA-15001, included in
19.9 and later
▪ Patch 26001677 – Implements REFRESH MODE for PDB relocate, included 19.8 and later
◦Required for environments with Transparent Data Encryption (TDE)
▪ Patch 29175638 - Adds support for INCLUDING SHARED KEY clause to avoid ORA-46659
errors.
▪ Patch 32220709 - Ensures shared PDB master keys display in v$encryption_keys, included in
19.14 and later.
◦Highly recommended
3. ▪ Patch 28374604 – Deletes partial redo logs created during refresh operations, available
19.1 and later
•Ensure the Oracle Homes for both the source and destination CDBs have matching versions and
patch inventories.
This ensures that no additional steps are required after opening the PDB at the destination.
•Ensure the source and destination CDBs have the same Oracle Options (e.g. Oracle Spatial,
Oracle Label Security, Oracle JVM, etc) installed and the same versions of the options.
•Both the source and destination CDBs must be using Local Undo, each PDB has its own set of
undo tablespaces.
•Use the STANDBYS=NONE clause to defer the recovery of the PDB in destination standby
databases when the destination CDB is part of a Data Guard environment.
It is currently not possible to automatically maintain standby databases during PDB relocation
operations, deferring recovery allows redo apply at any standby databases to continue.
To enable recovery you will need to restart redo apply when synchronizing a standby with the
relocated PDB’s data
fi
les. Use the instructions in Making Use Deferred PDB Recovery and the
STANDBYS=NONE Feature with Oracle Multitenant to enable recovery of the PDB after relocation
has completed.
The following process has been tested in both Oracle Exadata Database Service (ExaCS) and
Oracle Exadata Database Service Cloud.
PDB operations performed outside of the Console via SQL will not re
fl
ect in the Console until a
subsequent sync with the OCI control plane, they should be visible in the console and API-based
tools within 45 minutes of completion.
This is expected behavior.
For Data Guard con
fi
gurations, PDBs that are in deferred recovery status will not appear in the
Console, only PDBs with recovery enabled appear in the Console.
After enabling recovery of a PDB, the status change will appear in the Console on a subsequent
sync of the OCI control plane.
Platform and Character Set Prerequisites
You must meet the following prerequisites:
• The platforms of the source CDB and the destination CDB must meet the following
requirements:
◦ They must have the same endianness.
◦ The database options installed on the source platform must be the same as, or a subset of,
the database options installed on the destination platform.
• If the character set of the destination CDB is not AL32UTF8, then the source CDB and
destination CDB must have compatible character sets and national character sets.
If the character set of the destination CDB is AL32UTF8, then this requirement does not apply.
Note:Oracle Multitenant does not support a LOB in one container from being accessed by a
container with a di
ff
erent character set using data links, extended data links, or the
CONTAINERS() clause. For example, if the CDB root and salespdb have di
ff
erent character sets,
then a CONTAINERS() query run in the CDB root should not access LOBs stored in salespdb.
Performing a Pluggable Database (PDB) Relocate
Steps to Prepare for the Relocate
- On the target destination environment, ensure connectivity from all database instances back to
the source CDB.
The following are examples of TNS aliases for both the source and destination CDBs.
In Oracle RAC environments, these alias de
fi
nitions must be accessible to all database instances
in both the source and destination environments and should use the SCAN name as the host.
The following shows example entries:
4. DestinationCDB =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = <destination_scan_name>)(PORT =
<listener_port>))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = <destination service name for CDB>)
(FAILOVER_MODE =
(TYPE = select)
(METHOD = basic)
) ) )
SourceCDB =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = <source_scan_name>)(PORT =
<listener_port>))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = <source service for CDB>)
(FAILOVER_MODE =
(TYPE = select)
(METHOD = basic)
) ) )
Create a common user in the source cdb$root. This user must have CREATE CDB and SYSOPER
roles in addition to being granted SELECT on CDB_PDBS.
In the following example, "c##” is required in the user name to denote a common user.
The grants are required to allow the common user to perform PDB relocation.
On Source CDB:
SQL> alter session set container=cdb$root;
SQL> create user c##<user> identified by <password>;
User created.
SQL> grant create session, resource to c##<user> container=all;
SQL> grant create pluggable database to c##<user> container=all;
SQL> grant sysoper to c##<user> container=all;
SQL> alter user c##<user> set container_data=all container=current;
SQL> grant select on cdb_pdbs to c##<user>;
Create a database link in the destination CDB connecting to the common user just created in the
source CDB and verify connectivity
On Destination CDB:
5. SQL> alter session set container=cdb$root;
SQL> create database link <link name> connect to c##<user> identified by
<password> using '<source CDB TNS Alias>';
Database link created.
SQL> select count(*) from dual@<link name>;
COUNT(*)
----------
1
Modify memory and session settings at the destination CDB for items like Shared Pool, PGA
Aggregate Target and Parallel Query Servers to prepare for the new PDB(s) being relocated.
This will vary based on the workload characteristics of the PDB from the source CDB.
Save the state of all PDBs to be relocated in all instances.
This will ensure that services currently running in the source CDB/PDB will start when the PDB is
opened at the destination as part of Phase 2 of relocation.
On SourceCDB:
SQL> alter session set container=cdb$root;
SQL> alter pluggable database <pdbname> save state instances=all;
For environments running Grid Infrastructure (GI), this will option will only be used for the duration
of the relocate operation.
Once the PDB is relocated and services de
fi
ned at the destination, the saved state will be
discarded.
Set ALLOW_MULTIPLE_REDIRECTS_<listener_name>=YES for all listeners on the destination in
the listener.ora and reload the listeners.
For RAC environments only SCAN listeners should be added in each node’s listener.ora in
addition to con
fi
guring for all 3 SCAN listeners.
Using this setting allows the source CDB to use LISTENER CONNECTION FORWARDING and
forward connection attempts at the source CDB/PDB to the destination CDB/PDB.
For SCAN listeners you should only issue the reload on the node which that particular listener is
running.
ALLOW_MULTIPLE_REDIRECTS_LISTENER_SCAN1=YES
ALLOW_MULTIPLE_REDIRECTS_LISTENER_SCAN2=YES
ALLOW_MULTIPLE_REDIRECTS_LISTENER_SCAN2=YES
For each host running a SCAN listener, connect to the host and reload the appropriate SCAN
listener.
[Destinationhost]$ lsnrctl reload listener_scan1
6. Con
fi
guring LISTENER CONNECTION :
FORWARDING is only required when the source and destination CDBs do not share listeners.
If the source and destination CDBs share listeners, upon restart the PDB services will register as
part of the destination CDB on the same listeners so no forwarding is necessary.
For Oracle Real Application Cluster (RAC) and Oracle Restart environments, gather the
information for all services de
fi
ned for the CDB via srvctl.
Run the following command for each service de
fi
ned for the PDB.
Although the database contains all services de
fi
ned for the PDB, their de
fi
nitions in the Oracle
Cluster Registry (OCR) contain additional settings that are not stored with the PDB catalog.
These settings must be retrieved and the de
fi
nitions entered in CRS for the PDB as part of the
destination CDB.
To determine which services reside in the PDB, connect to the source PDB and run the following
query.
Do not query for the default service (NAME=’<PDBNAME>’) nor services owned by SYS. (NAME
like ‘SYS.%’).
On Source CDB:
SQL> alter session set container=<pdbname>;
SQL> select name from dba_services where name <> ‘<PDBNAME>’ and name not
like ‘SYS.%’;
For each service returned in the previous query, retrieve the information from CRS.
[sourcehost]$ srvctl config service –d <source CDB unique name> -s <source
PDB service name>
In the case of Oracle RAC or Oracle Restart environments, for each of the services retrieved
above add them to the OCR for the destination CDB/PDB combination.
This can be done prior to creation of the PDB at the destination site.
[destinationhost]$ srvctl add service –d <destination CDB db_unique_name>
-pdb <pdbname> -service <service name>….<additional settings>
Steps to Perform Phase 1 of the Relocate – PDB Remains
Available
This phase copies the
fi
les from the source to the destination. The time to complete the relocate
depends on the size of the PDB and the number of parallel processes available. The PDB(s)
remain open and accessible during this time.
7. Multiple relocates can be run concurrently in di
ff
erent sessions.
If opting to run multiple relocates concurrently, for Real Application Cluster environments balance
the sessions over multiple instances.
The command will run for as long as it takes to copy the
fi
les from the source CDB to the
destination CDB.
The
fi
le copies are automatically done in parallel using parallel query (PQ) slaves from the
destination CDB. The
fi
le copies will follow normal priority assignment to PQ slaves, it is not
possible to reduce or raise priority of access to PQ slaves.
Note that the PARALLEL clause can be used on the RELOCATE command but can only be used
to RESTRICT the number of slaves that are used for the
fi
le copy operation.
It is not possible to increase slaves beyond that de
fi
ned by PARALLEL_MAX_SERVERS in the
destination CDB.
Use of the REFRESH MODE clause is highly recommended. This allows the destination copy of
the PDB to be automatically periodically refreshed (redo from the source CDB is shipped and
applied to the relocated PDB’s data
fi
les) until you are ready to complete the operation. REFRESH
MODE had the potential to signi
fi
cantly shorten the application downtime required when the
relocated PDB is being opened at the destination.
A REFRESH MODE value of 30 minutes is recommended to balance resource utilization (shipping
and applying the redo) and downtime (maximum volume of redo that will be required at PDB open
time).
Connect to the destination CDB root and issue the relocate command.
The following example shows includes the handling of Transparent Data Encryption (TDE) keys.
The keys for the PDB will be transported from the source CDB keystore to the destination CDB
keystore as part of the relocate process by specifying the destination CDB keystore password on
the relocate command.
The keystore password needs to be supplied even for AUTOLOGIN keystores.
For environments not using TDE do not specify the KEYSTORE IDENTIFIED BY “<PASSWORD>
INCLUDING SHARED KEY” clauses.
Note that the name of the PDB being created must match the name of the source PDB.
On Destination CDB:
8. SQL> create pluggable database <pdbname> from <pdbname>@<link name>
relocate availability max
keystore identified by "<destination TDE keystore password>"
including shared key
refresh mode every 30 minutes standbys=none;
Sample of silent:
./dbca -silent
-relocatePDB
-sourceDB remcdb1
-remotePDBName rempdb1
-remoteDBConnString
remcdb1host:1521/reminst
-remoteDBSYSDBAUserName remSYS
-remoteDBSYSDBAUserPassword
remsyspwd
-dbLinkUsername c##adminuser_remcdb1
-dbLinkUserPassword pwd4dblinkusr
-sysDBAUserName locSYS
-sysDBAPassword locsyspwd
-pdbName relpdb1
The above command will cause the
fi
les belonging to the PDB at the source CDB to be copied to
the destination CDB, using whatever PQ slaves are available at the destination to perform the
copies.
The copies will be done similar to RMAN SECTIONSIZE processing in that multiple PQ slaves can
operate on a single
fi
le, the command will determine how large the sections should be.
The command will not return control until all
fi
le copies have completed.
While this is occurring the source PDB is still accessible to application and end user
activity.
To limit the number of PQ slaves the command is using, add the PARALLEL <pq slave count>
clause to the end of the command.
Any value of <pq slave count> larger than the PARALLEL_MAX_SERVERS initialization parameter
setting in the destination CDB will be ignored, the command will default back to
PARALLEL_MAX_SERVERS.
The AVAILABILITY MAX clause enables listener connection forwarding for this PDB after the
relocation has completed.
When the relocated PDB is opened at the destination, a “tombstone” PDB will remain at the
source CDB until it is manually dropped.
The tombstone has minimal size (tablespaces for system and sysaux) and does not open.
If the AVAILABILITY MAX clause is omitted, the source database will not perform listener
connection forwarding.
The clause can be omitted if the source and destination share the same listener network.
Specifying REFRESH MODE EVERY NN MINUTES enables a background process to periodically
(every NN minutes) retrieve redo generated at the source CDB and apply the redo for the source
PDB to
fi
le copies of that PDB at the destination.
9. Using this clause when there will be a large time gap between Phase 1 and Phase 2 can
signi
fi
cantly reduce the down time required to complete Phase 2 in addition to more accurately
bounding the amount of down time you can expect.
To monitor the progress of the
fi
le copies, connect to cdb$root in another session in the
destination CDB and query v$session_longops. The following is a short example of the output:
SQL> select opname, sofar, totalwork, time_remaining, message from
v$session_longops where time_remaining > 0;
OPNAME SOFAR TOTALWORK TIME_REMAINING
------------- ------- ---------- --------------
MESSAGE
kpdbf CopyTaskCbk-368 9103 131072000 215967
kpdbf CopyTaskCbk-368: <source_file_name> 11: 9103 out of 131072000 Blocks
done
kpdbf CopyTaskCbk-368 68847 131072000 26639
kpdbf CopyTaskCbk-368: <source_file_name> 11: 68847 out of 131072000 Blocks
done
If issues arise during this
fi
rst phase of relocation, it is possible to drop the copy of the PDB at the
destination and rerun Phase 1.
However, if Phase 1 has completed and any instance of the destination CDB is bounced, the
SAVE STATE will cause the PDB open on instance restart and automatically start Phase 2 of the
relocate.
On Destination CDB(if errors occurred on relocating)
SQL> alter session set container=cdb$root;
SQL> drop pluggable database <pdbname> including datafiles;
Steps to Perform Phase 2 of the Relocate – Application
Downtime Occurs
At the destination site, open the PDB.
This will cause the following to occur:
•Refresh of the PDB, retrieving redo generated at the source CDB since the last refresh and
applying it to the destination PDB copies of the data
fi
les.
•Quiesce of the source PDB
This closes the PDB in the source CDB.
What is Quiescing:
A quiesced CDB allows only DBA transactions, queries, fetches, or PL/SQL statements.
10. Application downtime begins here.
•Retrieve the last redo generated at the source CDB and apply to the destination PDB copies of
the data
fi
les, making the source and destination identical.
This is the redo generated by activity on the source PDB from the time Phase 2 started until the
source PDB was quiesced.
•Open of the PDB at the destination
•Start of the services that were running as part of the SAVE STATE.
This will not add the services to CRS for the new CDB/PDB combination.
To complete the relocate:
Connect to the destination CDB root and issue the following:
On Destination CDB:
SQL> alter session set container=cdb$root;
SQL> alter pluggable database <pdbname> open instances=all;
This command will take a few moments to execute depending on how much redo
must be retrieved and applied from the source CDB, in addition to impact of
any latency in the network between the source and destination CDBs.
Steps to Perform after the Relocate has Completed
Check for plug in violations for the PDB
Plug in violations are only detected as part of PDB open.
Fixing these issues may require a bounce of the PDB.
Connect to the CDB root at the destination and issue:
On Destination CDB:
SQL> alter session set container=cdb$root;
SQL> select * from pdb_plug_in_violations where name =’<PDBNAME>’ and status
<> 'RESOLVED' and type <> 'WARNING';
This will retrieve any violations that have not been resolved during the PDB
open.
Note that many violations (e.g. issues with di
ff
erent SPFILE settings between source and
destination, detected patch mismatches even when the patches applied between the source and
destination are an exact match) will be resolved on next PDB open.
If you did not do so as part of Steps to Prepare for the Relocate, in the case of Oracle RAC or
Oracle Restart environments, for each of the services retrieved above add them to the OCR for
the destination CDB/PDB combination.
[destinationhost]$ srvctl add service –d <destination CDB db_unique_name>
-pdb <pdbname> -service <service name>….<additional settings>
11. Modify connect strings for all applications and users to point to the new PDB location.
If the source and destination CDBs are part of the same network, there is no need to modify
connect strings.
The following steps should only be done once all connect strings have been modi
fi
ed and you no
longer need to use LISTENER CONNECTION FORWARDING
In the case of Oracle RAC or Oracle Restart environments, for each of the services retrieved
above remove them from the OCR for the source CDB.
[sourcehost]$ srvctl remove service –d <source CDB db_unique_name> -service
<service name>
Note this should not be done until the connect strings have been modified to
point applications and users to the new location of the PDB.
Drop the tombstone PDB from the source CDB using the INCLUDING DATAFILES clause
On Source CDB:
SQL> alter session set container=cdb$root;
SQL> drop pluggable database <pdbname> including datafiles;
For environments using CRS to maintain services, connect to the destination CDB and discard
the saved state information for the PDB.
On Destination CDB:
SQL> alter session set container=cdb$root;
SQL> alter pluggable database <pdbname> discard state instances=all;
If no additional relocates are to be performed at this time, remove the
ALLOW_MULTIPLE_REDIRECTS* entries from the destination listener.ora
fi
les and reload the
listeners.
For SCAN listeners you should only issue the reload on the node which that particular listener is
running.
[Destinationhost]$ lsnrctl reload listener_scan1
For Data Guard environments, we should follow the instructions in Making Use Deferred PDB
Recovery and the STANDBYS=NONE Feature with Oracle Multitenant that enable recovery of the
PDB at the destination standby and I will explain in next posts.
More info:
https://docs.oracle.com/en/database/oracle/oracle-database/19/multi/relocating-a-pdb.html#
Sincerely,
Alireza Kamrani,
RDBMS Technical Consultant.