What Should Change After Base DB System Clone Mustafa, 2025-11-12 Hi, if you are working on Oracle Cloud (which you should), you might copy your database to create a new environment. For example you can copy your DEV database as TEST. to achieve that there are many options but I will focus specific one. “Clone DB System”. In Oracle Cloud you can clone your existing base db system as a new base db system. This way will shorten your working time because you might have some standards on your databases, for example; I always remove the DB options that I don’t use on that environment (like vault, oracle text etc). I also take some actions on my db servers like automation of some tasks with cron jobs. When you “Clone” a base db system it clones with everything, so you don’t have to set them all. So it is great but what is the catch? Well, almost none if you are not aware of it but I do suggest to check few thinks especially if you are changing your VCN (virtual cloud network). Why? because in Oracle Cloud, base db systems has domain information based on your vcn subnet. Assume this scenario: VCN: vcn_dev VCN subnet: subnet_private_dev Base DB System: DBSystem_DEV (CDB name is CDB) your db system is in VCN_DEV vcn and subnet_private_vcn_dev subnet. based on those information your database domain will be something like: subnetprivate.vcndev.oraclevcn.com. if you check global_name : select * from global_name; CDB.SUBNETPRIVATE.VCNDEV.ORACLEVCN.COM Second, it should be something like that. So, as you can guess, if you change your VCN in CLONE action, your domain must change but it does not! you might change the name of the database but domain name will be still the original one. So you must change it (but please check STEP Five first): alter database rename global_name to CDB.NEWSUBNET.NEW_VCN.ORACLEVCN.COM; -- replace your domain 1 alter database rename global_name to CDB.NEWSUBNET.NEW_VCN.ORACLEVCN.COM; -- replace your domain then restart the database. Second thing that you should be careful is DIRECTORY objects. They still might be showing the old directory paths. You copied this db to create a new environment, so it must be using correct paths select * from dba_directories; -- replace directory names 1 select * from dba_directories; -- replace directory names Third, if you are using an SSL Wallet, you must also set correct location for it. since this is a database parameter it won’t be change automatically. Also do this on all pdbs (or cdb if you are using in it but I don’t think so). show parameter ssl_Wallet; alter system set ssl_wallet='your_new_path_here'; 12 show parameter ssl_Wallet;alter system set ssl_wallet='your_new_path_here'; Fourth, delete old service names! this is also an important one because in database services, you will see service names with old domain names so you should delete them. select * from cdb_services; exec dbms_service.delete_Service('CDB.subnetprivate.vcndev.oraclevcn.com'); -- and other services with old domain names 1234 select * from cdb_services; exec dbms_service.delete_Service('CDB.subnetprivate.vcndev.oraclevcn.com');-- and other services with old domain names Fifth, be careful on DB Links, since you are changing your domain now, old db links probably will not work because by default they are stored with domain name! Another problem here is you won’t be easily drop them too! You must delete link$ records to reference old db links (THIS IS HIGHLY DANGEROUS, take your own risks). I also strongly suggest you to do this as the first action so that, you can just run “drop database link” command. So far so good. these kind of actions must be considered carefully. you can run on a system with incorrect settings and they will hurt you when the timing is the worst. Wish you all a good day. 19c 21c 23ai Administration Cloud base db systemclone db systemdatabase cloneocioracle cloudoracle_cloud