Wednesday, December 30, 2015

Oracle 12c Architecture change

Hi All,

From busy schedule i got chance to get understanding.

From Oracle Database 12c Release 1, the concept of multitenant environment has been introduced. The multitenant architecture enables an Oracle database to function as a multitenant container database (CDB) that includes zero, one, or many customer-created pluggable databases (PDBs). A PDB is a portable collection of schemas, schema objects, and nonschema objects that appears to an Oracle Net client as a non-CDB. All Oracle databases prior to Oracle Database 12 were non-CDBs. 


A CDB includes the following components:

  • Root
    The root, named CDB$ROOT, stores Oracle-supplied metadata and common users. An example of metadata is the source code for Oracle-supplied PL/SQL packages. A common user is a database user known in every container. A CDB has exactly one root.
  • Seed
    The seed, named PDB$SEED, is a template that you can use to create new PDBs. You cannot add objects to or modify objects in the seed. A CDB has exactly one seed.
  • PDBs
    A PDB appears to users and applications as if it were a non-CDB. For example, a PDB can contain the data and code required to support a specific application. A PDB is fully backward compatible with Oracle Database releases before Oracle Database 12c.
Each of these components is called a container. Therefore, the root is a container, the seed is a container, and each PDB is a container. Each container has a unique container ID and name within a CDB.

Also from Oracle Database 12c Rel 2 oracle introduce Oracle Enterprise Manager Express instead of oracle enterprise manager (EM) we used earlier.

https://docs.oracle.com/database/121/UPGRD/deprecated.htm#UPGRD60005

 
Will discuss on both here.

1. How could i know installed oracle 12c database is CDB or Non-CDB ?
Login to database using SQL plus and execute below query.

select name,cdb,con_id from v$database;

If your database Non-CDB, will get result similar to below



If your database CDB, will get result similar to below





In CDB & non-CDB database instance details remains same.


SQL> select instance_name,status,con_id from v$instance;

INSTANCE_NAME    STATUS           CON_ID
---------------- ------------ ----------
orcl             OPEN                  0


But Oracle Oracle Enterprise Manager Express show CDB and PDB details differently.



Normally you login with SQLPlus default get authenticated in CDB

SQL> select dbms_xdb_config.gethttpsport() from dual;

DBMS_XDB_CONFIG.GETHTTPSPORT()
------------------------------
                          5500

SQL> select con_id,name,open_mode from v$pdbs;

    CON_ID NAME                           OPEN_MODE
---------- ------------------------------ ----------
         2 PDB$SEED                       READ ONLY
         3 PDBORCL                        MOUNTED

SQL> alter pluggable database pdborcl open;

Pluggable database altered.

SQL> select con_id,name,open_mode from v$pdbs;

    CON_ID NAME                           OPEN_MODE
---------- ------------------------------ ----------
         2 PDB$SEED                       READ ONLY
         3 PDBORCL                        READ WRITE

SQL> alter session set container=pdborcl;

Session altered.

SQL> select dbms_xdb_config.gethttpsport() from dual;

DBMS_XDB_CONFIG.GETHTTPSPORT()
------------------------------
                             0

SQL> exec dbms_xdb_config.sethttpsport(5501);

PL/SQL procedure successfully completed.

SQL>

Thursday, March 05, 2015

SAP Download manager not working

SAP Download Manager failed to start with error message windows error 2 occurred while loading the java vm

Running with Windows 7 SP1 and latest JAVA version 8 update 40.
to resolve issue you can start using through command prompt with below steps

open command prompt
go to directory where SAP Download manager
CD C:\Program Files (x86)\SAP Download Manager>
execute command java -classpath "DLManager.jar" dlmanager.Application

For permanent settings
Open program group of SAP download manager
create shortcut as shown in below screen shot
where target = java path and command
in target enter "C:\Program Files (x86)\Java\jre1.8.0_40\bin\java.exe" -classpath "DLManager.jar" dlmanager.Application

where start in = location of sap download manager directory
in start in "C:\Program Files (x86)\SAP Download Manager"


Hope this helped you.