Difference in CDB and NON CDB database in Oracle 12c
1. Non CDB is similar database present in old oracle version like 11g ,10g ,9i etc.
2. CDB is further divided into container like Root container, PDB Seed , PDB user databases but in NON CDB only one database.
3. In CDB, separate SYSTEM and SYSAUX tablespace for the root container and each PDB but in Non CDB only one system, sysaux tablespace because one database.
4. In CDB, you can create multiple PDB databases and for connectivity each seperatly you need to create Services and tns entries, In Non CDB only one database so you can use only one service but it has option to create multiple service for one database.
5. In CDB, root container you can created user with C## tag only as called common user, you can also create separate local user in the PDB. In non-CDB you can create user directly.
6. In CDB is open with start up command, you need to fire another command for open the pluggable database “alter pluggalbe database open all”, but in NON-CDB only startup will work for opening database.
7. Only one UNDO table-space for the entire CDB similar to non-CDB.
8. Only one set of control files and online redo logs files for the entire CDB similar to non-CDB.
9. PDB’s have their own data files and do not have distinct redo log or control files.
10. Create on default temporary tablespace for the entire CDB or each PDB can have its own additional temporary tablespaces.
11. Single network administration files like listener.ora, tnsnames.ora, and sqlnet.ora file for an entire CDB. All of the PDBs in the CDB use the same files.
12. Only one set of background processes shared by the root and all PDBs.
13. Single SGA shared by all PDB’s.
14. When the CDB is shut down then all PDB’s are also automatically shut down.
15. Patching on CDB covered all PDB databases.