Tjek, om databasen er CDB eller ikke-CDB
SQL> vælg cdb fra v$database;CDB---JA
Opretter forbindelse til container
$ eksport ORACLE_SID=pcdb01$ sqlplus / som sysdbaSQL> vis con_nameCON_NAME-------------------------------------CDB$ROOTSQL> vis con_idCON_ID--------------------------------------1SQL> vis pdbs;CON_ID CON_NAME ÅBEN MODUS BEGRÆNSET-------- ---------------------------------- ------------------ --2 PDB$SEED LÆS KUN NO3 PRD_PDB_CON LÆS SKRIV NR4 PRD_PDB_TEN LÆS SKRIV NEJ
Naviger på tværs af PDB'er
SQL> ændre sessionssæt container=PDB$SEED;Session ændret.SQL> ændre sessionssæt container=PRD_PDB_CON;Session ændret.SQL>
Oplysninger om PDB'er
SQL> KOLONNE PDB_NAME FORMAT A15SQL> KOLONNE PDB_NAME FORMAT A15SQL> VÆLG PDB_ID, PDB_NAME, STATUS FRA DBA_PDBS BESTIL EFTER PDB_ID;PDB_ID PDB_NAME STATUS---------- ---------- ----- ----------2 PDB$SEED NORMAL3 PRD_PDB_CON NORMAL4 PRD_PDB_TEN NORMAL
Kontrol af/ændre parameter
SQL> vælg * fra v$system_parameter;SQL> vælg * fra PDB_SPFILE$;SQL> alter system set parameter_name=value;SQL> ændre systemsæt parameter_name=value CONTAINER=CURRENT;
Opstart og nedlukning af PDB
Nogle typiske værdier:
OPSTART [NOMOUNT | MONTERE | BEGRÆNS | OPGRADERING | FORCE | LÆS KUN]
SLUKNING [STRAKS | AFBRYD]
$ eksport ORACLE_SID=pcdb01$ sqlplus / as sysdbaSQL> lukning øjeblikkelig;
Stop pluggbar database
SQL> ændre pluggbar database PRD_PDB_CON luk [øjeblikkelig];SQL> ændre pluggbar database ALLE UNDTAGET PRD_PDB_CON luk [øjeblikkelig];SQL> ændr pluggbar database ALLE luk;SQL> ændre pluggbar database PRD_PDB_CON luk [øjeblikkelig=alle] [forekomster;
Eller:
SQL> alter SESSION SET CONTAINER =PRD_PDB_CON;SQL> lukning øjeblikkelig;
Start Pluggable Database
STARTKRAFT
OPSTART ÅBEN LÆS SKRIV [BEGRÆNS]
OPSTART ÅBEN LÆSEKUN [BEGRÆNS]
STARTOPGRADERING
SHUTDOWN [IMMEDIATE]
SQL> ændre pluggbar database PDB01 åben;SQL>ændre pluggbar database ALLE UNDTAGET PRD_PDB_CON åben;SQL>ændre pluggbar database ALLE åben;SQL>ændre pluggbar database PDB01 åben [instances=all];
Eller:
SQL> alter SESSION SET CONTAINER =PRD_PDB_CON;SQL> startup;SQL> alter PLUGGABLE DATABASEÅBN LÆS SKRIV [BEGRÆNSET] [FORCE];SQL> alter PLUGGABLE DATABASE- ÅBN LÆSEKUN [BEGRÆNSET][FORCE];SQL> alter PLUGGABLE DATABASE ÅBN OPGRADERING [RESTRICTED];SQL> alter PLUGGABLE DATABASE LUK [IMMEDIATE];
Bevar PDB-starttilstand (12.1.0.2 og frem)
SQL> ændre PLUGGABLE DATABASE pdb2 OPEN;SQL> alter PLUGGABLE DATABASE pdb2 SAVE STATE;
DBA_PDB_SAVED_STATES-visningen viser information om beholdernes gemte tilstand.
SQL> COLUMN con_name FORMAT A20SQL> COLUMN instance_name FORMAT A20SQL> VÆLG con_name, instance_name, state FROM dba_pdb_saved_states;CON_NAME INSTANCE_NAME STATE--------------------- --- ------------------ --------------PRD_PDB_CON pcdb01 ÅBEN
Størrelse på pluggbar database
SQL> KOLONNENAVN FORMAT A20SQL> VÆLG DBID, NAME, CON_ID, CON_UID, TOTAL_SIZE FRA V$CONTAINERS BESTILLING AF CON_ID;DBID NAVN CON_IDCON_UID TOTAL_SIZE---------- -------- ---------------------- ---------- ------------------ --2732069181 CDB$ROOT 1 1 03552543733 PDB$SEED 2 3552543733 7759462404008367944 PRD_PDB_CON 3 4008367944 12404276B71Pr71120427265 PR71044272665 PR71100000000000
Starttid for pluggbar database
SQL> sæt linjestørrelse 180SQL> col name for a30SQL> col open_time for a33SQL> vælg con_id,name,dbid,open_mode,open_time fra v$containers;CON_ID NAME DBID OPEN_MODE OPEN_TIME---------- - --------------- -------------- ---------- ---------- - --------------------------------1 CDB$ROOT 456650806 LÆS SKRIV 17-MAR-18 11.59.36.176 PM -03 :Ære AM -03:004 rækker valgt.
Opetid for pluggbar database
SQL> sæt linjestørrelse 180SQL> col name for a30SQL> col open_time for a28SQL> vælg name,floor(sysdate-cast(open_time as date))||'Days '||floor(((sysdate-cast(open_time as date))-floor(sysdate-cast(open_time as date)))*24)||'timer '||round(((sysdate-cast(open_time as date)-floor(sysdate-cast(open_time as date) ) *24)-floor((sysdate-cast(open_time as date)-floor(sysdate-cast(open_time as date))*24)))*60)||'minutes' "Database Uptime"fra v$containers;NAME Databasens oppetid--------------- ---------------------------CDB$ROOT 1331Dage 11timer 28minutterPDB $SEED 1331Dage 11timer 28minutesPDB_PN1O0101 1331Days 11hours 28minutesPDB_BATCHWEB 1331Days 11hours 28minutes4 rækker valgt.
Navn på tjenester
SQL> KOLONNENAVN FORMAT A30SQL> VÆLG NAVN,CON_ID,PDB FRA V$SERVICES BESTILLING AF CON_ID;NAVN CON_ID PDB---------------------- ------- ---------- ------------------------------------ pcdb01XDB 1 CDB $ROOTSYS$BACKGROUND 1 CDB$ROOTSYS$USERS 1 CDB$ROOTpcdb01 1 CDB$ROOTprd_pdb_con 3 PRD_PDB_CONprd_pdb_ten 4 PRD_PDB_TEN6 rækker valgt.
Opret fælles brugere med adgang til alle pdbsSQL> OPRET BRUGER c##user1 IDENTIFICERET AF password1 CONTAINER=ALL;Bruger oprettet.SQL> TILDELING OPRET SESSION TIL c##user1 CONTAINER=ALL;Tildeling lykkedes.Opret almindelige brugere uden adgang til pdbs
SQL> OPRET BRUGER c##user2 IDENTIFICERET AF password1;Bruger oprettet.SQL> GIV OPRET SESSION TIL c##user2;Tildeling lykkedes.Opret en lokal bruger med kun adgang til pdb
SQL> CREATE USER user3 IDENTIFICERET BY password3 CONTAINER=CURRENT;Bruger oprettet.SQL>GANT CREATE SESSION TO user3 CONTAINER=CURRENT;Grant lykkedes.Opret fælles rolle
SQL> CONN / AS SYSDBASQL> OPRET ROLLE c##role1;Role oprettet.SQL> TILDEL CREATE SESSION TIL c##role1;Grant lykkedes.
Tildel rolle til en almindelig bruger
SQL> TILDEL c##role1 TIL c##user1 CONTAINER=ALL;Grant lykkedes.
Tildel rolle til en almindelig bruger til en lokal bruger
SQL> alter SESSION SET CONTAINER =PRD_PDB_CON;Session ændret.SQL> TILDEL c##role1 TIL bruger2;Tildelingen lykkedes.Lokale roller
SQL> CONN / AS SYSDBASQL> alter SESSION SET CONTAINER =PRD_PDB_CON;Session ændret.SQL> OPRET ROLLE rolle1;Rolle oprettet.SQL> TILDELING OPRET SESSION TIL rolle1;Tildeling lykkedes.Oprettelse af PDB'er
SQL> opret pluggbar database HMLPDB admin bruger admin identificeret af PassDw1 rolls =(DBA);SQL> opret pluggbar database DSVPDB admin bruger admin identificeret af Manager1roles =(DBA) lagerplads (MAXSIZE 1G) FILE_NAME_CONVERT=('/u01/app /oracle/oradata/pcdb01/pcdb01_pdbseed_','/u01/app/oracle/oradata/dsvpdb/dsvpdb_');SQL> opret pluggbar database DSVPDB1 fra DSVPDB file_name_convert=('/DSVPDB/'/'/DSVPDB1','/DSVPDB);Eksklusive PDB'er
SQL> ændre pluggbar database DSVPDB1 luk [immediate] [instances=all];SQL> drop pluggbar database DSVPDB1 inklusive datafiler;Takker PDB'er ud
$ sqlplus / as sysdbaSQL> ændre pluggbar database PRD_PDB_CON close;SQL> ændre pluggbar database PRD_PDB_CON frakoble til '/tmp/prd_pdb_con.xml';Tilslutning af PDB'er
$ sqlplus / as sysdbaSQL> opret pluggbar database PRD_PDB_CON ved hjælp af '/tmp/prd_pdb_con.xml' FILE_NAME_CONVERT=('/oradata/cdb1/prd_pdb_con', '/oradata/cdb2_/prd_pdbLBCON PRD_PdbD CONVERT_alt_pdbLD); åben;Konfiguration af tjenester på Oracle RAC med CDB'er
$ srvctl add service -db CDB01 -service new_service -pdb PRD_PDB_CON$ srvctl modify service -db CDB01 -service new_service -pdb PRD_PDB_CON$ srvctl remove service -db CDB01 -service new_serviceBEGINVICE_SERVICE_name => 'new_service.com');END;/BEGINDBMS_SERVICE.DELETE_SERVICE(service_name => 'new_service');END;/Med root-container har vi cdb_tablespaces og cdb_data_files viser tablespacet og datafilerne for alle containerne i CDB'en.
Når du er forbundet til en PDB, viser cdb_tablespaces og cdb_data_files de samme oplysninger som dba_tablespaces, dba_data_files for PDB.
SQL> alter session set container=CDB$ROOT;Session altered.SQL> vælg tablespace_name, con_id fra cdb_tablespaces rækkefølge efter con_id;TABLESPACE_NAME CON_ID-------------------- ----------- --------SYSTEM 1SYSAUX 1UNDOTBS2 1TEMP 1USERS 1UNDOTBS1 1SYSTEM 3SYSAUX 3TBS_GEN_01 3TEMP 3TBS_CON_IDX_01 3TBS_CON_DT_01 3USERS 3SYSTEM 4SYSAUX 4TBS_GEN_S1space 4TBS_GENS1s_space 4TBS_GENS1S1_space. -----------------------------SYSTEMSYSAUXUNDOTBS1TEMPUSERSUNDOTBS26 rækker valgt.Sådan tjekker du for Local Fortryd-funktionen i 12.2
I Oracle Database 12c Release 1 delte alle containere i en instans det samme fortryd tablespace.
I Oracle 12c Release 2 kan hver container i en instans bruge sit eget fortryd tablespace.
SQL> shutdown immediate;SQL> startup upgrade;SQL> ændr database lokal fortryd på;SQL> shutdown immediate;SQL> startup;SQL> col property_name format a30SQL> col property_value format a30SQL> vælg property_name, property_value hvor property database_properties ='LOCAL_UNDO_ENABLED';PROPERTY_NAME PROPERTY_VALUE---------------- -------------- LOCAL_UNDO_ENABLED TRUEReferencer
https://docs.oracle.com