Quantcast
Channel: Peasland Database Blog
Viewing all articles
Browse latest Browse all 106

ORA-65139: Mismatch between XML metadata file and data file

$
0
0

I was trying to plug a non-CDB into our new Multitenant environment as we make the move to Multitenant. I am going to create a golden image of our production non-CDB and then all dev and test databases will just be clones off the golden image. But first, I need to get the non-CDB plugged in. I have the disk snapshot mounted to the Multitenant database servers. I also generated the XML file and I’m ready to plug in the non-CDB with this command:

CREATE PLUGGABLE DATABASE gold180904
USING '/home/oracle/source_db.xml'
NOCOPY
SOURCE_FILE_NAME_CONVERT=('/u01/app/oracle/oradata/data01',
         '/u01/app/oracle/oradata/mt_golden_2018_09_06_095555/data01',
'/u01/app/oracle/oradata/data02','/u01/app/oracle/oradata/mt_golden_2018_09_06_095555/data02',
'/u01/app/oracle/oradata/data03','/u01/app/oracle/oradata/mt_golden_2018_09_06_095555/data03',
'/u01/app/oracle/oradata/data04','/u01/app/oracle/oradata/mt_golden_2018_09_06_095555/data04')
TEMPFILE REUSE;

Unfortunately, I ran into the following error:

CREATE PLUGGABLE DATABASE gold180904
*
ERROR at line 1:
ORA-65139: Mismatch between XML metadata file and data file
/u01/app/oracle/oradata/mt_golden_2018_09_06_095555/data03/datafile12.dbf for
value of rdba (4194824 in the plug XML file, 4458552 in the data file)

In my research, the ORA-65139 error is normally seen when the XML file was generated with the database open as READ WRITE. But I know for a fact that my database was READ ONLY when the XML file was generated.  Furhtermore, all of the similar issues I found on MOS and in Google searches all had “value of fcpsb” whereas the last line of my error message says “value of rdba”. Well I’m not sure what the RDBA has to do with this and neither of the values in the error message map to the datafile listing in the message. So this was a puzzler for me.

After trying a few different things, I decided to run the check for plugin compatiblity.

DECLARE
compatible BOOLEAN;
BEGIN
compatible:=DBMS_PDB.CHECK_PLUG_COMPATIBILITY(
     pdb_descr_file=>'/home/oracle/source_db.xml',
     pdb_name=>'GOLD180904');
END;
/

When querying PDB_PLUG_IN_VIOLATIONS, one line had an error.  Its message in that view said:

PSU bundle patch 180717 (DATABASE PATCH SET UPDATE 12.1.0.2.180717): Installed in the PDB but not in the CDB.

This now makes more sense. The source database is a production environment with the latest PSU applied. The CDB is brand new and has yet to see any patches. I applied the latest PSU to the CDB and the plugin operation worked successfully on the next try.

In the end, it was obvious the error message had nothing to do with the root cause of the problem. At least not to me.


Viewing all articles
Browse latest Browse all 106

Latest Images

Trending Articles



Latest Images