Hvordan tilslutter jeg en PDB til Oracle12c-databasebeholder?

Resumen: Vores mål er at levere løsninger, der forenkler it ved at levere databaseløsninger, tilpasset udvikling, dynamiske datacentre og fleksibel databehandling

Este artículo se aplica a Este artículo no se aplica a Este artículo no está vinculado a ningún producto específico. No se identifican todas las versiones del producto en este artículo.

Síntomas

Gælder for: 
Databaser: Oracle 12cR1

Forfatter:
Mahesh Reddy

Problem: 
Hvordan tilslutter jeg en PDB til Oracle12c-databasebeholder?

Løsning: 
Du kan oprette en tilslutningsbar database (PDB) på følgende måder:
  • Opret ny PDB med SEED.
  • Opret ny PDB ved at klone eksisterende PDB
  • Sæt en ikke-tilsluttet PDB i CDB
  • Opret ny PDB fra 12c-ikke-CDB
1. Opret ny PDB med SEED:

Opret en PDB ved hjælp af SEED-databasen. Denne metode kopierer de filer, der er associeret med SEED, til en ny placering og knyttes til en ny PDB. Du kan nemt oprette ny PDB fra SEED ved hjælp af meldingen Opret tilslutningsbar database.

Du kan angive følgende konstruktioner for at oprette en ny PDB fra SEED på forskellige måder:
  • Lagerplads: Du kan angive lagergrænserne
  • Standardtabelplads: Opretter en lille filbaseret tabelplads og tildeler den til ikke-systembrugere.
  • path_prefix: Specificerer den absolutte sti
  • file_name_convert: Angiver den nye placering af PDB-filer fra kildefilerne.
  • Tempfile-genbrug: Specificerer og genbruger tempfilen fra destinationsplaceringen.
  • Roller: De foruddefinerede Oracle-roller, der skal tildeles til PDB_DBA-rollen.
SLN310932_da__1icon Bemærk: Rolle-konstruktionen kan kun bruges, når du opretter en PDB fra SEED.

Eksempel: 1

SQL > Opret tilslutningsbar database PDBNAME admin-bruger PDBUSR identificeret af PASSWORD;

Ovenstående instruktioner opretter PDB med den lokale bruger PDBUSR.  Denne instruktion tildeler rollen PDB_DBA til PDB-administratoren "pdbusr", og tildeler de angivne foruddefinerede Oracle-roller til PDB_DBA-rollen lokalt i PDB.

Eksempel: 2                              

Sql> Create pluggable database PDBNAME admin user pdbusr identified by PASSWORD storage (MAXSIZE 5G) default tablespace USERS datafile ‘+DATA_NEW’ size 100M autoextend on path_prefix = ‘+DATA_NEW’ file_name_convert = (‘+DATA’,’DATA_NEW’);

Ovenstående instruktioner opretter pdb'en med den begrænsede størrelse, angiver at alle tabelstederne, der tilhører PDB, ikke må overskride 5 gigabyte og opretter brugerne af standardtabelsteder for ikke-administrator-brugere på den nye placering, som er "+ DATA_NEW". 

2.  Opret ny PDB ved at klone en eksisterende PDB:

Kloning af produktionsdatabase er en almindelig teknik, der bruges til at udvikle og teste ændringer på programmer og tilknyttede miljøer. Inden der udgives et nyt operativsystem, Storage-software eller programversion i et produktionsmiljø, er grundig test ved brug af produktionsdata nødvendig. Dette opnås normalt ved at kopiere produktionsdatabasen til et testmiljø.

I Oracle12c kan du anvende instruktionen OPRET TILSLUTNINGSBAR DATABASE til at klone en PDB. Denne instruktion kloner en kilde-PDB og tilslutter klonen i den samme CDB eller fjern-CDB.

Instruktionen OPRET TILSLUTNINGSBAR DATABASE kopierer de filer, der er associeret med kildens PDB, til en ny placering og knytter filerne sammen med destinationens PDB.

Forskellige konstruktionstyper:

1.       Kloning af en lokal PDB uden brug af konstruktioner

Ingen konstruktion betyder ingen strukturelle ændringer.

Eks.: sql> create pluggable database clone_pdb from pdb;

Her er den klonede PDB oprettet med samme størrelse og samme roller, men med forskellige GUID i standarddiskgruppen.

2.       Kloning af en lokal PDB med punkterne PATH_PREFIX og FILE_NAME_CONVERT

Der kræves en FILE_NAME_CONVERT-konstruktion for at angive placeringen af de kopierede filer. I dette eksempel kopieres filerne fra én placering til en anden.

Eks.:  sql> create pluggable database clone_pdb from pdb PATH_PREFIX= '+BRLOAD’ FILE_NAME_CONVERT = ('+DATA','+BRLOAD');

Her gemmes kildens PDB-datafiler i "+DATA"-diskgruppe, klonede PDB-datafiler er placeret i forskellige diskgrupper "+BRLOAD", du kan bruge FILE_NAME_CONVERT-konstruktionen til at konvertere datafilernes placeringen fra "+DATA" til "+BRLOAD".

3.       Kloning af en lokal PDB vha. FILE_NAME_CONVERT- og STORAGE-konstruktioner.

Storage-grænserne skal håndhæves for PDB. Derfor kræves STORAGE-konstruktionen. Specifikt må alle tabelområder, der tilhører PDB, ikke overskride 2 gigabyte, og den lagerplads, der anvendes af PDB-sessionerne i det delte midlertidige tabelområde, må ikke overstige 100 MB.

Eks.: sql> create pluggable database clone_pdb from pdb FILE_NAME_CONVERT= ('+DATA','+BRLOAD') STORAGE (MAXSIZE 2G MAX_SHARED_TEMP_SIZE 100M);

 Trin til at klone en lokal PDB:

Dette afsnit beskriver kloning af en lokal PDB. Efter at have klonet en lokal PDB, er kilde- og destinations-PDB'erne i samme CDB.

Du kan klone PDB ved hjælp af følgende trin:

Trin 1: Kontrollér kildens PDB-status

  Sql>show pdbs;

      CON_ID   CON_NAME    OPEN MODE      RESTRICTED

          2    PDB$SEED       READ ONLY   NO

          3    PDB1           READ WRITE  NO

 PDB'er, der er beregnet til at blive klonet, skal være i skrivebeskyttet tilstand. Hvis det findes i læse/skrive-tilstand, skal du ændre status ved hjælp af nedenstående kommando

Sql> alter pluggable database pdbname close instances=all;

Her betyder "instances=all" at lukke PDB i alle knuder.

Sql> alter pluggable database pdb open read only instances=all;

Sql>show pdbs;

      CON_ID   CON_NAME    OPEN MODE      RESTRICTED

          2    PDB$SEED       READ ONLY   NO

          3    PDB1           READ ONLY   NO

Trin 2: Vælg de nødvendige indstillinger fra forskellige kloningskonstruktioner nævnt i afsnit2.

Sql> create pluggable database clone_pdb1 from pdb1; (no clauses)

Hvor pdb1 er kilde, og clone_pdb1 er destination

Trin 3: Klonet PDB vil være i tilsluttet tilstand, og dens status er NEW. Du kan få vist status for en PDB ved at forespørge om STATUS-kolonnen i visningen af CDB_PDBS eller DBA_PDBS.

Derefter skal du ændre tilstanden for PDB ved hjælp af tilslutningsbar database, og så skal du tilføje en PDB-service i tnsnames.ora i alle knuder.

3. Frakobl og tilslut en PDB til CDB:

Sådan frakobles en PDB:

Frakobling af en PDB frakobler PDB-filen fra en CDB. Funktionen til frakobling foretager nogle ændringer i PDB-datafilerne som registreres, f.eks. at PDB er blevet frakoblet. Da det stadig er en del af CDB, vil den frakoblede PDB være inkluderet i en RMAN-sikkerhedskopi af hele CDB. En sådan sikkerhedskopi er en bekvem måde at arkivere den ikke-tilkoblede PDB på, hvis det er nødvendigt i fremtiden. PDB skal lukkes, før den kan frakobles. Når du frakobler en PDB fra CDB, er den ikke-tilsluttede PDB i tilsluttet tilstand.

Trin til at frakoble en PDB:

Kontrollér kildens PDB-status

 Sql>show pdbs;

      CON_ID   CON_NAME    OPEN MODE      RESTRICTED

          2    PDB$SEED       READ ONLY   NO

          3    PDB1           READ WRITE  NO

Hvis kildens PDB er i læse/skrive-tilstand, skal du ændre tilstanden for PDB til MOUNTED-tilstand.

Sql> alter pluggable database PDBNAME close instances=all;

Opret forbindelse til rodbeholderen, og udfør kommandoen nedenfor

Sql> alter pluggable database pdb1 unplug into /u01/app/oracle/pdb1.xml’;

Her oprettes metadatafilen pdb1.xml i mappen /u01/app/oracle.

Ved hjælp af XML metadatafil kan du tilslutte PDB i

3.1. samme CDB

3.2. fjern-CDB

Du kan tilslutte PDB til CDB ved hjælp af Opret tilslutningsbar database og angive XML-filen med forskellige konstruktioner.

Forskellige konstruktionstyper:

Anvendelse af source_file_name_convert uden kopikonstruktion:
SOURCE_FILE_NAME_CONVERT: XML-filen viser ikke den aktuelle filplacering. Her kan vi bruge denne konstruktion. XML angiver, at filerne er placeret i +DATA, men faktisk er filerne i +DATA1.

Source_file_name_convert = ("+DATA", "+DATA1")

+DATA= string1   +DATA1=string2

Her erstatter string2-filnavnet string1-filnavnet.

2.       Brug af konstruktionen path_prefix, copy, file_name_convert clause:

PATH_PREFIX: denne konstruktion bruges til at angive den absolutte sti for placering af datafiler.

FILE_NAME_CONVERT: du kan bruge denne konstruktion, når filerne ikke er på destinationsplaceringen, og du ønsker at kopiere eller flytte dem under PDB-oprettelsen.

3.       Brug af konstruktionen FILE_NAME_CONVERT,MOVE,SOURCE_FILE_NAME_CONVERT:

XML-filen beskriver ikke placeringen af den aktuelle fil, så kildefilens navn skal konverteres. Eksempel: XML-fil angiver, at filerne er placeret i "+DATA", men filerne er i "/u01/app".

Konvertering af filnavn er nødvendig for at flytte filerne fra "/u01/app" til "+DATA1".

3.1. Tilslut den ikke-tilsluttede PDB i den samme CDB:

PDB'en skal fjernes fra CDB, før den kan tilsluttes den samme CDB.

 Opret tilslutningsbar database ved hjælp af XML-fil med forskellige metoder.

a)       NOCOPY-metode

Sql>Create pluggable database pdb1 using ‘/u01/app/oracle/pdb1.xml’ nocopy;

b)      COPY-metode

Sql> Create pluggable database pdb1 using ‘/u01/app/oracle/pdb1.xml’ copy file_name_convert=(‘+DATA/pdb1/’,’+DATA1’/pdb1/’);

c)       AS CLONE MOVE-metode

Sql> Create pluggable database pdb1 as clone using ‘/u01/app/oracle/pdb1.xml’ move file_name_convert=(‘+DATA/pdb1/’,’+DATA1’/pdb1/’);

3.2. Tilslut den ikke-tilsluttede PDB til fjern-CDB:

Forudsætninger:

A)      De skal have samme endian-format.

B)      De skal have samme sæt databaseindstillinger installeret.

KILDE:

1.   Når du har frakoblet PDB'en, skal du overføre XML'en til destinationsplaceringen og også overføre databasefilerne fra diskgruppen (+DATA) til OS-placeringen (/home/) ved hjælp af ASMCMD CP eller kommandoen DATA_FILE_NAME_CONVERT.

2.   Overfør databasefilerne fra kilden til destinationen for operativsystemet. 

MÅL:

Når du har hentet XML- og databasefilerne fra kilden, kan du bruge funktionen DBMS_PDB.CHECK_PLUG_COMPATIBILITY til at finde ud af, om den frakoblede PDB er kompatibel med DESTINATIONENS CDB.

Hvis du får outputtet "YES", så er PDB kompatibel.

Hvis du får outputtet "NO", så er PDB ikke kompatibel. Kontrollér PDB_PLUG_IN_VIOLATIONS for fejl.

Når du opretter en fjern-PDB, skal du vælge de nødvendige konstruktioner fra afsnit3,

Eks.: Sql> Create pluggable database pdbname using ‘/home/oracle/pdbname.xml’

      Source_file_name_convert = (‘+SOURCE_DATA’,’/home/oracle/datafiles’)

      Flyt

      File_name_convert = ('/home/oracle/datafiles', '+TARGET_DATA');

Beskrivelse: XML-filen angiver PDB-datafilers placering i forhold til ASM-diske, men de faktiske filer er placeret på "/home/oracle"-placeringen. Konstruktionen source_file_name_convert hjælper med at udskifte filnavnets mønster og udpege den faktiske kildeplacering. Konstruktionen file_name_converts hjælper med at flytte data fra OS-placering til ASM-diske.

4. Overfør 12c-noncdb til PDB:

Se venligst dette whitepaper.
Propiedades del artículo
Número del artículo: 000146520
Tipo de artículo: Solution
Última modificación: 21 feb 2021
Versión:  3
Encuentre respuestas a sus preguntas de otros usuarios de Dell
Servicios de soporte
Compruebe si el dispositivo está cubierto por los servicios de soporte.