Reputation: 27
Does it make any difference to store tables inside container database or pluggable database? I'm a new to Oracle database. I've got Enterprise edition 21. I'm just using it for testing purposes.
I've googled for any kind of information, but didn't find anything.
Upvotes: 1
Views: 1408
Reputation: 22457
It makes a HUGE difference, don't put your application tables into the Container (CDB) unless you have a very specific reason to do so.
Treat the pluggable database as your application instance. The safest way to go is to create a CDB with a single PDB and treat that PDB as 'your database.'
For clarification and details, see the Docs.
Oracle-Base also has some great commentary and advice.
Upvotes: 1
Reputation: 36902
Most data should be stored in a pluggable database instead of the CDB root. From the manual:
The CDB root does not store user data. Oracle recommends that you do not add common objects to the root or modify Oracle-supplied schemas in the root. However, you can create common users and roles for database administration. A common user with the necessary privileges can switch between containers.
While you can create tables on the CDB, it will likely eventually lead to weird problems that will annoy your DBAs - users won't work as expected, data won't be stored in the expected tablespaces, etc.
This is a seemingly-simple question, but your confusion is entirely understandable because Oracle's multitenant architecture is incredibly stupid. Don't even get me started.
Upvotes: -1