I'm trying to clone an Oracle 12c pluggable database from a remote host, but I'm receiving an internal error code with very little to debug with:
SQL> CREATE PLUGGABLE DATABASE CLONED_PDB FROM SRC_PDB@RCDB;
CREATE PLUGGABLE DATABASE CLONED_PDB FROM SRC_PDB@RCDB
*
ERROR at line 1:
ORA-00600: internal error code, arguments: [], [], [], [], [], [], [], [], [],
[], [], []
ORA-00600: internal error code, arguments: [], [], [], [], [], [], [], [], [],
[], [], []
Both machines have Oracle 12c installed, and I have admin access on both. I'm also able to clone locally on the remote host, which makes me think it's a file permission issue, but I don't know what I'd need to chmod
. The redacted script, run from localhost as sysdba in SQL*Plus:
---------- REMOTE HOST ----------
-- Connect to remote host
CONN sys/password@//remotehost:1521/cdb0 AS SYSDBA
-- Drop existing user
DROP USER C##NEW_RCU;
-- Create user in remote PDB
CREATE USER C##NEW_RCU IDENTIFIED BY new_rcu;
-- Grant privileges to remote user
GRANT CONNECT, RESOURCE, DBA, CREATE SESSION, CREATE PLUGGABLE DATABASE TO C##NEW_RCU;
-- Connect to source PDB
ALTER PLUGGABLE DATABASE SRC_PDB CLOSE IMMEDIATE;
ALTER PLUGGABLE DATABASE SRC_PDB OPEN READ WRITE;
ALTER SESSION SET CONTAINER=SRC_PDB;
-- Grant create privileges to remote user
GRANT CONNECT, RESOURCE, DBA, CREATE SESSION, CREATE PLUGGABLE DATABASE TO C##NEW_RCU;
-- Connect to CDB
ALTER SESSION SET CONTAINER=CDB$ROOT;
-- Open source PDB in read-only mode
ALTER PLUGGABLE DATABASE SRC_PDB CLOSE IMMEDIATE;
ALTER PLUGGABLE DATABASE SRC_PDB OPEN READ ONLY;
---------- DESTINATION HOST ----------
-- Connect to destination host
CONN sys/password@//localhost:1521/cdb0 AS SYSDBA
-- Drop existing DB link
DROP DATABASE LINK RCDB;
-- Drop database if it exists
DROP PLUGGABLE DATABASE CLONED_PDB;
-- Create database link in root container
CREATE DATABASE LINK RCDB CONNECT TO C##NEW_RCU IDENTIFIED BY new_rcu USING '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=remotehost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=SRC_PDB)))';
-- DEBUGGING ONLY
SELECT SYSDATE FROM DUAL@RCDB;
-- Clone remote PDB
CREATE PLUGGABLE DATABASE CLONED_PDB FROM SRC_PDB@RCDB;
-- Open new PDB in read/write mode
ALTER PLUGGABLE DATABASE CLONED_PDB OPEN;
Everything - including the select sysdate from dual@rcdb
- works as expected except for the last 2 commands.
Any idea how to debug this, or any steps I can try to get this clone to work?