Hoe je multi-tenant architectuur Navigeer in Oracle 12c

Een groot verschil met het werken in een multi-tenant architectuur is hoe u verbinding maakt met uw Oracle 12c databases. Omdat er slechts één System Global Area (SGA) en een set van processen op de achtergrond, eenvoudig aan te sluiten op een instantie zoals je geleerd hebt voor niet Container Databases (CDBs) is niet van toepassing op precies dezelfde manier.

Je gaat te willen op de hoogte zijn van een aantal belangrijke nieuwe opdrachten en uitzicht data dictionary.

Allereerst, hoe u verbinding maakt met de CDB en of Stekkerbare Databases (VOB)? U maakt verbinding met de CDB op dezelfde manier waarop je gebruikt om te doen in het verleden. U kunt uw ORACLE_SID instellen en verbinding maken met SQL * Plus of RMAN als SYSDBA. Aansluiten op de pluggable databases is waar de dingen van elkaar verschillen. U kunt verbinding maken met een VOB op twee manieren:

  • U kunt verbinding maken met de CDB en dan uw sessie om je omgeving in te stellen naar een VOB veranderen.
  • U kunt Oracle Net om de route u naar een VOB via een dienst naam met behulp van de Tnsnames.ora- bestand.

Verbinding maken met een VOB door de CDB op Linux, als volgt te werk:

  1. Open een terminal voor een gebruiker met de benodigde privileges om verbinding met de database via SQL * Plus.
  2. Stel uw omgeving om de CDB behulp van de oraenv gereedschap door te typen

    <. oraenv>

    Je ziet iets als dit:

    [Oracle @ orasvr01 ~] $. oraenv
    ORACLE_SID = [oracle]? devcdb
    De Oracle basis blijft ongewijzigd met waarde / u01 / app / oracle

  3. Verbinding maken met de CDB net zoals je zou elke niet-CDB door te typen

    <Sqlplus / as sysdba>

    Je zoiets als dit:

    SQL * Plus: Laat 12.1.0.1.0 Productie op vr 16 augustus 2013 23:34:59
    Copyright (c) 1982, 2013, Oracle. Alle rechten voorbehouden.
    Verbonden met:
    Oracle Database 12c Enterprise Edition release 12.1.0.1.0 - 64bit Production
    Met het partitioneren, OLAP, Advanced Analytics en Real Application Testing opties

  4. Om te zien waar in de multi-tenant architectuur je bent aangesloten, typt u de nieuwe 12c commando:

    <Show con_name>

    Je ziet iets als dit:

    CON_NAME
    ------------------------------
    CDB $ ROOT

  5. Hier krijg je een lijst van je VOB door het bevragen van een van de nieuwe standpunten data woordenboek voor het ondersteunen van een multi-tenant omgeving door te typen

    <Select name, open_mode
    van v $ VOB;>

    U kunt deze snelkoppeling gebruiken om dezelfde output te krijgen:

    SQL> toon VOB

    Je ziet iets als dit:

    NAAM OPEN_MODE
    ---------- ----------
    VOB $ SEED ALLEEN LEZEN
    DEVPDB1 lezen-schrijven

    Merk op dat de VOB $ SEED is zichtbaar in de modus alleen-lezen. Het is zeldzaam dat je ooit nodig zou hebben om verbinding te maken met deze database - het is in de eerste plaats intern gebruikt voor optimalisatie doeleinden bij het maken van VOB.

  6. Aan te sluiten op uw VOB DEVPDB1 vanuit uw CBD, type:

    <Zitting te wijzigen set container = devpdb1;>

    Je ziet iets als dit:

    Sessie veranderd.

  7. Om te laten zien dat je nu in het VOB container, het type

    <Show con_name>

    Je ziet iets als dit:

CON_NAME
------------------------------
DEVPDB1

De andere manier om aan te sluiten op uw containers is rechtstreeks via Oracle Net. Deze methode ondersteunt de garantie dat de multi-tenant omgeving volledig compatibel met niet-CDB omgevingen zal zijn.

  1. Zorg ervoor dat de databases zijn opgenomen met de luisteraar op de server. Om dit te doen, inloggen op de OS als de Oracle-software eigenaar en het type

    <Lsnrctl-status>

    Je ziet iets als dit:

    Service "devcdb" heeft 1 instantie (s).
    Bijvoorbeeld "devcdb", de status READY, heeft 1 handler (s) voor deze dienst ...
    Service "devpdb1" heeft 1 instantie (s).
    Bijvoorbeeld "devcdb", de status READY, heeft 1 handler (s) voor deze dienst ...

    Deze uitgang geeft aan dat de CDB en de VOB zijn dienst geregistreerd bij de luisteraar.

  2. Zorg ervoor dat er TNS vermeldingen op de klanten uit die u wilt aansluiten.

    Bijvoorbeeld, moet u data gemodelleerd naar dit voorbeeld hebben:

    DEVPDB1 =
    (BESCHRIJVING =
    (ADRES = (PROTOCOL = TCP) (HOST = orasvr01) (PORT = 1521))
    (CONNECT_DATA =
    (SERVER = dedicated)
    (SERVICE_NAME = devpdb1)
    )
    )

  3. Na het bevestigen van de voorgaande configuraties, kunt u verbinding van uw Oracle SQL * Plus-client door te typen

    <Sqlplus systeem @ devpdb1>

    Je ziet iets als dit:

Laatste Succesvol ingelogd tijd: vr 1 februari 2013 09:48:20 -04: 00
Verbonden met:
Oracle Database 12c Enterprise Edition release 12.1.0.1.0 - 64bit Production
Met het partitioneren, OLAP, Advanced Analytics en Real Application Testing opties
SQL>