<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Archives des dbua - dbi Blog</title>
	<atom:link href="https://www.dbi-services.com/blog/tag/dbua/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.dbi-services.com/blog/tag/dbua/</link>
	<description></description>
	<lastBuildDate>Thu, 08 Jun 2023 14:33:30 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2025/05/cropped-favicon_512x512px-min-32x32.png</url>
	<title>Archives des dbua - dbi Blog</title>
	<link>https://www.dbi-services.com/blog/tag/dbua/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Migration with Multitenant: how easy it is!</title>
		<link>https://www.dbi-services.com/blog/migration-with-multitenant-how-easy-it-is/</link>
					<comments>https://www.dbi-services.com/blog/migration-with-multitenant-how-easy-it-is/#respond</comments>
		
		<dc:creator><![CDATA[Jérôme Dubar]]></dc:creator>
		<pubDate>Fri, 03 Feb 2023 15:01:17 +0000</pubDate>
				<category><![CDATA[Oracle]]></category>
		<category><![CDATA[21c]]></category>
		<category><![CDATA[23c]]></category>
		<category><![CDATA[automatic migration with multitenant]]></category>
		<category><![CDATA[CDB]]></category>
		<category><![CDATA[container]]></category>
		<category><![CDATA[dbua]]></category>
		<category><![CDATA[migrating with multitenant]]></category>
		<category><![CDATA[multitenant]]></category>
		<category><![CDATA[pdb migration]]></category>
		<category><![CDATA[plug]]></category>
		<category><![CDATA[Pluggable Database]]></category>
		<category><![CDATA[unplug]]></category>
		<category><![CDATA[upgrade]]></category>
		<guid isPermaLink="false">https://www.dbi-services.com/blog/?p=22271</guid>

					<description><![CDATA[<p>Introduction On Oracle Database, Multitenant feature will be turning 9 in July, but it&#8217;s not yet widely deployed as most of the databases are still running on non-CDB architecture. With 19c, Multitenant is now mature and free if you stick to a maximum of 3 PDBs per CDB. If the benefits of Multitenant are not [&#8230;]</p>
<p>L’article <a href="https://www.dbi-services.com/blog/migration-with-multitenant-how-easy-it-is/">Migration with Multitenant: how easy it is!</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h2 class="wp-block-heading">Introduction</h2>



<p>On Oracle Database, Multitenant feature will be turning 9 in July, but it&#8217;s not yet widely deployed as most of the databases are still running on non-CDB architecture. With 19c, Multitenant is now mature and free if you stick to a maximum of 3 PDBs per CDB. If the benefits of Multitenant are not obvious at first glance, it&#8217;s a game changer when it comes to future migrations.</p>



<h2 class="wp-block-heading">Migration without Multitenant</h2>



<p>It&#8217;s been decades that migration is done by mostly choosing between these 2 methods:</p>



<ul class="wp-block-list">
<li>in-place upgrade of the database files by connecting them to a new DB home and running the catalog upgrade</li>



<li>export data from source DB to a dumpfile and import this dumpfile into a newly created database already running the target version</li>
</ul>



<p>The first option is fast, as soon as you stay on the same server, but after years using this method you still keep the old database structure with its legacy configurations, which is not so good. I remember, several years ago, working on an Exadata and not being able to use modern features because database files came from an old 8i or 9i.</p>



<p>The second migration option is the most popular and pretty clean, but rather slow because it&#8217;s based on DDL and DML statements. And you first need to identify schemas and dependencies you&#8217;d like to migrate. It&#8217;s easier to do a full export/import operation, but it generates a lot of errors you must analyze and solve. It&#8217;s because dictionary metadata and objects metadata are mixed, and importing dictionary metadata in a new database is not possible as dictionary already exists. But DBAs get used to this.</p>



<p>A third option is a combination of both: exporting objects metadata only and copying selected datafiles to the new database. It&#8217;s called Transportable Tablespaces, but it also needs schemas and dependencies analysis, and it only works if every segment resides in its expected tablespace.</p>



<h2 class="wp-block-heading">Purpose of a container in Multitenant</h2>



<p>A container database (CDB) will not be as important as a non-container database (non-CDB). It&#8217;s important as long as pluggable databases (PDBs) are running inside. But as your PDBs are easily movable, at some point you will move them. And the old container becomes useless. One of the reasons of moving these PDBs is migrating them to a newer version.</p>



<p>This is why your container shouldn&#8217;t have a name related to the applications it runs. The PDB has its own name, and the associated service will follow the PDB when you move it to another container.</p>



<p>Imagine you are preparing the 23c migration of the 3 PDBs in your 19c container C1917TST. You will create a new C2301TST container, with the same settings as C1917TST, move the PDB to this new container, and your migration is done. You can then delete the old container. Let&#8217;s test this.</p>



<h2 class="wp-block-heading">Testing a migration from 19c to 21c</h2>



<p>The 23c is the next long term release, but it&#8217;s not yet available. So the tests will be done with the current innovation release: 21c.</p>



<p>Migrating a PDB to a newer version could be limited to unplugging the database and plugging it into a new container. In this example, source CDB is 19c, and target will be 21c.</p>



<p>I&#8217;m pretty sure it will work fine, but as I&#8217;m using multitenant, I can duplicate my PDB and I will safely migrate the copy instead. If something goes wrong, I still have my original PDB with its original name in the source CDB.</p>



<pre class="wp-block-code"><code>. oraenv &lt;&lt;&lt; CDB19C1
sqlplus / as sysdba
create pluggable database JRQDUP from JRQO4D;
alter pluggable database JRQDUP open;
...
alter pluggable database JRQDUP save state;
alter pluggable database JRQDUP close immediate;
</code></pre>



<p>Now let&#8217;s unplug this PDB and remove it from the source CDB:</p>



<pre class="wp-block-code"><code>alter pluggable database JRQDUP unplug into '/home/oracle/jrqdup.xml';
drop pluggable database JRQDUP keep datafiles;
exit
</code></pre>



<p>Let&#8217;s plug it into the new container. The MOVE option is used to move the datafiles to the correct subfolder:</p>



<pre class="wp-block-code"><code>. oraenv &lt;&lt;&lt; CDB21C4
create pluggable database JRQDUP using '/home/oracle/jrqdup.xml' MOVE;
alter pluggable database JRQDUP open;
...
</code></pre>



<p>Opening this PDB is not immediate, let&#8217;s have a look at what&#8217;s happening in another sqlplus session:</p>



<pre class="wp-block-code"><code>show pdbs
    CON_ID CON_NAME			  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
	 2 PDB$SEED			  READ ONLY  NO
	 3 JRQDUP			  MIGRATE    YES</code></pre>



<p>PDB is first opened in restricted mode to do the upgrade of the metadata.</p>



<p>Once finished, my PDB is automatically opened in normal mode:</p>



<pre class="wp-block-code"><code>show pdbs
    CON_ID CON_NAME			  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
	 2 PDB$SEED			  READ ONLY  NO
	 3 JRQDUP			  READ WRITE NO
</code></pre>



<p>And that&#8217;s it. Upgrade of the PDB is automatic when opening the database.</p>



<p>Next step would be stopping and dropping the source PDB and renaming the new one if you want to keep its original name.</p>



<h2 class="wp-block-heading">Conclusion</h2>



<p>With Multitenant, it&#8217;s very easy to migrate to a newer version. Just unplug the PDB you want to migrate from the old container and plug it into the new one, and Oracle will do the migration job.</p>
<p>L’article <a href="https://www.dbi-services.com/blog/migration-with-multitenant-how-easy-it-is/">Migration with Multitenant: how easy it is!</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbi-services.com/blog/migration-with-multitenant-how-easy-it-is/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Upgrade to Oracle 12.2 with  dbupgrade utility</title>
		<link>https://www.dbi-services.com/blog/upgrade-to-oracle-12-2-with-dbupgrade-utility/</link>
					<comments>https://www.dbi-services.com/blog/upgrade-to-oracle-12-2-with-dbupgrade-utility/#respond</comments>
		
		<dc:creator><![CDATA[Oracle Team]]></dc:creator>
		<pubDate>Wed, 10 May 2017 13:24:21 +0000</pubDate>
				<category><![CDATA[Database Administration & Monitoring]]></category>
		<category><![CDATA[catctl.pl]]></category>
		<category><![CDATA[dbua]]></category>
		<category><![CDATA[dbupgrade]]></category>
		<category><![CDATA[Oracle 12.2]]></category>
		<category><![CDATA[Upgrade]]></category>
		<guid isPermaLink="false">https://www.dbi-services.com/blog/upgrade-to-oracle-12-2-with-dbupgrade-utility/</guid>

					<description><![CDATA[<p>By Mouhamadou Diaw Oracle 12.2 is released and we will have to upgrade. And in this blog we are going to talk about upgrading to oracle 12.2 using the dbupgrade utility. Of course the dbua tool is still available and can be also used. Oracle Database 12.1 introduced the Parallel Upgrade Utility, catctl.pl. This utility [&#8230;]</p>
<p>L’article <a href="https://www.dbi-services.com/blog/upgrade-to-oracle-12-2-with-dbupgrade-utility/">Upgrade to Oracle 12.2 with  dbupgrade utility</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>By Mouhamadou Diaw</strong></p>
<p>Oracle 12.2 is released and we will have to upgrade. And in this blog we are going to talk about upgrading to oracle 12.2 using the dbupgrade utility.</p>
<p>Of course the dbua tool is still available and can be also used.</p>
<p>Oracle Database 12.1 introduced the Parallel Upgrade Utility, catctl.pl. This utility reduces the total amount of time it takes to perform an upgrade by loading the database dictionary in parallel, and by using multiple SQL processes to upgrade the database.</p>
<p>In Oracle 12.1 catcpl.pl had to be run using perl like<br />
<code>$ORACLE_HOME/perl/bin/perl catctl.pl -n 8 -l /home/oracle catupgrd.log</code><br />
Starting with Oracle 12.2, we can use dbupgrade utility which starts up catctl.pl instead to run it from perl.</p>
<p>In this article we will describe the steps for upgrade using <span style="color: #ea6d14">dbupgrade</span>.</p>
<p>The first step is to run the preupgrade information tool <span style="color: #ea6d14">preupgrade.jar</span> tool which replaced the preupgrd.sql and utluppkg.sql scripts. This tool can be run from operating system command line. Remember that in 12.1, the Pre-Upgrade Information Tool was run within SQL*Plus as a SQL file.</p>
<p>Following environment variables must be set. Indeed ORACLE_HOME must point to the earlier release.<br />
<code><br />
[oracle@serveroracle ~]$ export ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1<br />
[oracle@serveroracle ~]$ export ORACLE_BASE=/u01/app/oracle<br />
[oracle@serveroracle ~]$ export ORACLE_SID=ORCL<br />
[oracle@serveroracle ~]$ export PATH=.:$ORACLE_HOME/bin:$PATH<br />
</code><br />
The preupgrade.jar file is located to the oracle 12.2 $ORACLE_HOME/rdbms/admin. We can execute it using the TERMINAL or FILE options. The TERMINAL option will send output in the terminal and with FILE we will have the output in a file.<br />
<code><br />
oracle@serveroracle:~[ORCL] $ORACLE_HOME/jdk/bin/java -jar /u01/app/oracle/product/12.2.0.1/dbhome_1/rdbms/admin/preupgrade.jar TERMINAL TEXT<br />
Report generated by Oracle Database Pre-Upgrade Information Tool Version<br />
12.2.0.1.0<br />
Upgrade-To version: 12.2.0.1.0<br />
=======================================<br />
Status of the database prior to upgrade<br />
=======================================<br />
Database Name:  ORCL<br />
Container Name:  ORCL<br />
Container ID:  0<br />
Version:  12.1.0.2.0<br />
Compatible:  12.1.0.2.0<br />
Blocksize:  8192<br />
Platform:  Linux x86 64-bit<br />
Timezone File:  18<br />
Database log mode:  ARCHIVELOG<br />
Readonly:  FALSE<br />
Edition:  EE<br />
...<br />
...<br />
...<br />
Preupgrade generated files:<br />
/u01/app/oracle/cfgtoollogs/ORCL/preupgrade/preupgrade_fixups.sql<br />
/u01/app/oracle/cfgtoollogs/ORCL/preupgrade/postupgrade_fixups.sql<br />
oracle@serveroracle:~[ORCL]<br />
</code><br />
As specified if we want the output in a file, we can use the option FILE instead of TERMINAL. The output directory is $ORACLE_BASE/cfgtoollogs/$ORACLE_SID<br />
<code><br />
[oracle@serveroracle ~]$ $ORACLE_HOME/jdk/bin/java -jar /u01/app/oracle/product/12.2.0.1/dbhome_1/rdbms/admin/preupgrade.jar FILE  TEXT<br />
Preupgrade generated files:<br />
/u01/app/oracle/cfgtoollogs/ORCL/preupgrade/preupgrade.log<br />
/u01/app/oracle/cfgtoollogs/ORCL/preupgrade/preupgrade_fixups.sql<br />
/u01/app/oracle/cfgtoollogs/ORCL/preupgrade/postupgrade_fixups.sql<br />
[oracle@serveroracle ~]$<br />
</code><br />
Once the execution done, the tool will identify possible issues during the upgrade and will also generate 2 scripts<br />
 preupgrade_fixups.sql: fixes issues that an automated script can fix safely. This script must be run before the upgrade<br />
 postupgrade_fixups.sql: fixes the upgrade issues that can be automatically fixed after the upgrade.<br />
For all other issues we have to manually fix them.<br />
<code><br />
Connected to:<br />
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production<br />
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options<br />
SQL&gt; @preupgrade_fixups.sql<br />
</code><br />
Once done we are ready to run the dbupgrade utility.</p>
<p>Prepare the environment<br />
<code><br />
oracle@serveroracle:/home/oracle/ [rdbm12201] which dbupgrade<br />
/u01/app/oracle/product/12.2.0.1/dbhome_1/bin/dbupgrade<br />
oracle@serveroracle:/home/oracle/ [rdbm12201] echo $ORACLE_HOME<br />
/u01/app/oracle/product/12.2.0.1/dbhome_1<br />
oracle@serveroracle:/home/oracle/ [rdbm12201] export ORACLE_SID=ORCL<br />
</code><br />
Copy the parameter file to the oracle 12.2 ORACLE_HOME/dbs<br />
<code><br />
oracle@serveroracle:/home/oracle/ [ORCL] cp /u01/app/oracle/product/12.1.0/dbhome_1/dbs/spfileORCL.ora /u01/app/oracle/product/12.2.0.1/dbhome_1/dbs/<br />
oracle@serveroracle:/home/oracle/ [ORCL]<br />
</code><br />
Start the database in the new environment in an upgrade mode<br />
<code><br />
oracle@serveroracle:/home/oracle/ [ORCL] which sqlplus<br />
/u01/app/oracle/product/12.2.0.1/dbhome_1/bin/sqlplus<br />
oracle@serveroracle:/home/oracle/ [ORCL] sqlplus<br />
SQL*Plus: Release 12.2.0.1.0 Production on Thu May 4 16:24:22 2017<br />
Copyright (c) 1982, 2016, Oracle.  All rights reserved.<br />
Connected to an idle instance.<br />
SQL&gt; startup upgrade<br />
ORACLE instance started.<br />
Total System Global Area  394264576 bytes<br />
Fixed Size                  8621136 bytes<br />
Variable Size             293602224 bytes<br />
Database Buffers           83886080 bytes<br />
Redo Buffers                8155136 bytes<br />
Database mounted.<br />
Database opened.<br />
SQL&gt;<br />
</code><br />
And then run the dbupgrade utility<br />
<code><br />
oracle@serveroracle:/home/oracle/upgrade/ [ORCL] dbupgrade -n 2 -l /home/oracle/upgrade<br />
Argument list for [/u01/app/oracle/product/12.2.0.1/dbhome_1/rdbms/admin/catctl.pl]<br />
Run in                c = 0<br />
Do not run in         C = 0<br />
Input Directory       d = 0<br />
Echo OFF              e = 1<br />
Simulate              E = 0<br />
Forced cleanup        F = 0<br />
Log Id                i = 0<br />
Child Process         I = 0<br />
Log Dir               l = /home/oracle/upgrade<br />
Priority List Name    L = 0<br />
Upgrade Mode active   M = 0<br />
SQL Process Count     n = 2<br />
SQL PDB Process Count N = 0<br />
Open Mode Normal      o = 0<br />
Start Phase           p = 0<br />
End Phase             P = 0<br />
Reverse Order         r = 0<br />
AutoUpgrade Resume    R = 0<br />
Script                s = 0<br />
Serial Run            S = 0<br />
RO User Tablespaces   T = 0<br />
Display Phases        y = 0<br />
Debug catcon.pm       z = 0<br />
Debug catctl.pl       Z = 0<br />
catctl.pl VERSION: [12.2.0.1.0]<br />
STATUS: [production]<br />
BUILD: [RDBMS_12.2.0.1.0_LINUX.X64_170125]<br />
...<br />
...<br />
...<br />
LOG FILES: (/home/oracle/upgrade/catupgrd*.log)<br />
Upgrade Summary Report Located in:<br />
/home/oracle/upgrade/upg_summary.log<br />
Grand Total Upgrade Time:    [0d:1h:38m:21s]<br />
oracle@serveroracle:/home/oracle/upgrade/ [ORCL]<br />
</code><br />
Once the upgraded finished without errors, we can run the postupgrade_fixups.sql.<br />
<code><br />
SQL*Plus: Release 12.2.0.1.0 Production on Thu May 4 23:17:10 2017<br />
Copyright (c) 1982, 2016, Oracle.  All rights reserved.<br />
Connected to:<br />
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production<br />
SQL&gt; @postupgrade_fixups.sql<br />
</code></p>
<p>Hope that this article will help</p>
<p>L’article <a href="https://www.dbi-services.com/blog/upgrade-to-oracle-12-2-with-dbupgrade-utility/">Upgrade to Oracle 12.2 with  dbupgrade utility</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbi-services.com/blog/upgrade-to-oracle-12-2-with-dbupgrade-utility/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Take care while upgrading your Oracle DB with &#8220;DBUA&#8221;</title>
		<link>https://www.dbi-services.com/blog/take-care-while-upgrading-your-oracle-db-with-qdbuaq/</link>
					<comments>https://www.dbi-services.com/blog/take-care-while-upgrading-your-oracle-db-with-qdbuaq/#respond</comments>
		
		<dc:creator><![CDATA[Hervé Schweitzer]]></dc:creator>
		<pubDate>Thu, 11 Aug 2011 10:36:00 +0000</pubDate>
				<category><![CDATA[Database management]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[dbua]]></category>
		<category><![CDATA[Migration]]></category>
		<category><![CDATA[Oracle 10g to 8i]]></category>
		<category><![CDATA[Oracle 11g]]></category>
		<guid isPermaLink="false">https://www.dbi-services.com/blog/take-care-while-upgrading-your-oracle-db-with-qdbuaq/</guid>

					<description><![CDATA[<p>Last Week at my Customer, I used dbua to upgrade an oracle database 10h to 11g, the migration run successfully. But next day I had a monitoring message that the diag directory is groing very fast.</p>
<p><img src="http://blog.dbi-services.com/wp-insides/uploads/images/stories/blog/Herve/tmp.gif" /></p>
<p>L’article <a href="https://www.dbi-services.com/blog/take-care-while-upgrading-your-oracle-db-with-qdbuaq/">Take care while upgrading your Oracle DB with &#8220;DBUA&#8221;</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Last week at a customer, I used DBUA to upgrade an Oracle database from 10g to 11g and the migration ran successfully. However, the day after I got a monitoring message that the diag directory is growing very rapidly.</p>
<p><img fetchpriority="high" decoding="async" src="https://www.dbi-services.com/blog/wp-content/uploads/sites/2/2022/04/tmp.gif" alt="tmp" width="550" height="389" /></p>
<h3>Analysis</h3>
<p>I began checking why the diagnostic directory was growing so fast. And I found out that all 11g databases &#8211; the new one and all the other ones &#8211; reported the message below each second in the database alert.log file.</p>
<p><code>WARNING: Oracle executable binary mismatch detected.<br />
Binary of new process does not match binary which started instance<br />
issue alter system set "_disable_image_check" = true to disable these messages</code></p>
<p>This problem occured because during the database upgrade procedure, DBUA recompiles the Oracle binary executable. Thus all databases using this Oracle executable file send WARNINGS that the executable was recompiled.</p>
<pre class="brush: actionscript3; gutter: true; first-line: 1">oracle@chbsslcmdbdb1:~/app/oracle/product/11.2.0.2/bin/ [DBACT411] ls -lrt
 ....
 -rwxr-xr-x 1 oracle dba      3771 Oct 28  2010 emagentdeploy.pl
 -rwxr-xr-x 1 oracle dba      6299 Oct 28  2010 dbca
 -rwxr-xr-x 1 oracle dba      3552 Oct 28  2010 db2gc
 -rwsr-s--x 1 oracle dba 228886356 Jun  9 09:59 oracle</pre>
<h3>How to fix this problem</h3>
<p>A restart from all affected database must be done.</p>
<h3>My recommendation</h3>
<p>When you upgrade an 11g database on a server where you still have a 11g database running that you can not restart: Install a new ORACLE_HOME and this problem will only affect your new database which can be fixed with a simple restart of the database.</p>
<p>L’article <a href="https://www.dbi-services.com/blog/take-care-while-upgrading-your-oracle-db-with-qdbuaq/">Take care while upgrading your Oracle DB with &#8220;DBUA&#8221;</a> est apparu en premier sur <a href="https://www.dbi-services.com/blog">dbi Blog</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbi-services.com/blog/take-care-while-upgrading-your-oracle-db-with-qdbuaq/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Page Caching using Disk: Enhanced 
Lazy Loading (feed)

Served from: www.dbi-services.com @ 2026-06-07 04:51:36 by W3 Total Cache
-->