adatbázisnév megváltoztatása NEWID

House of Brick Senior Consultant

a DBA által elvégzendő sok feladat egyike az adatbázis klónozása. Általában ez egy termelési adatbázisból egy minőségbiztosítási vagy tesztadatbázisba történik, hogy termelési volumenadatokat szolgáltasson. Ha az adatbázis virtuális gépen van, a klónozás virtuális gép szintjén történhet.

a klónozás pontosan azt teszi, amit jelent, létrehozva egy adatbázis pontos másolatát. Sajnos ez azt eredményezi, hogy két azonos nevű adatbázis és DBID van a hálózatában. Néha lehet megoldani, hogy kellően aliasing a TNSNAMES szinten.

más esetekben meg kell változtatnia az adatbázis nevét és a DBID-t belsőleg. Az Oracle rendelkezik ehhez egy segédprogrammal, a NEWID alkalmazással.

ez a dokumentum részletezi az adatbázisnév megváltoztatásához szükséges lépéseket a NEWID használatával.

terminológia és definíciók

ebben a dokumentumban a következő terminológiát és definíciókat használjuk.

Sid – Oracle Webhelyazonosító. Ez az adatbázis neve, amelyet módosítanak.
PFILE-Oracle paraméterfájl. A $ORACLE_HOME/dbs mappában található.
SPFILE-Oracle szerver paraméterfájl. A $ORACLE_HOME/dbs mappában is található.
ORATAB-Oracle konfigurációs fájl, amely társítja az Oracle SIDs Oracle homes. Az /etc/oratab fájlban található.
TNSNAMES-Oracle hálózati konfigurációs fájl, amely a bejövő kapcsolatokat Oracle SIDs-sel társítja. A $ORACLE_HOME/network/admin mappában található.

adatbázis neve
az adatbázis neve, vagy SID, prd-ről qa-ra változik. Erre adott esetben hivatkozni fog a dokumentumban.

a folyamat áttekintése
az Oracle database name (Sid) módosításához négy lépést kell végrehajtani.

  1. előzetes előkészítő munka
  2. NID alkalmazás használata
  3. SID hivatkozások módosítása
  4. Adatbázis indítása és véglegesítése

1. Előzetes előkészítő munka

az adatbázis nevének megváltoztatása után módosítani kell az Oracle paraméterfájlt. Ha az adatbázis paraméterfájl (PFILE) helyett kiszolgálóparaméter-fájlt (SPFILE) használ, akkor az adatbázis nevének megváltoztatása előtt spfile-ről PFILE-re kell konvertálnia.

1.1 annak meghatározása, hogy az SPFILE használatban van-e
futtassa a következő lekérdezést annak megállapítására, hogy az adatbázis pfile-vel vagy SPFILE-vel indult-e:

1.1 ábra az SPFILE használatának lekérdezése

SQL> válassza ki a dekódolást(érték, NULL, ‘PFILE’, ‘SPFILE’) “Init Fájltípus
“a sys.v_$paraméter, ahol name = ‘spfile’;

futtassa ezt a lekérdezést annak megállapításához, hogy az adatbázis PFILE-vel vagy SPFILE-vel kezdődik-e.

ha az adatbázis PFILE – vel kezdődik, nincs szükség további előkészítő munkára, és folytathatja a 2.lépést-használja a NID alkalmazást. Ellenkező esetben folytassa a következő lépéssel.

1.2 Pfile létrehozása SPFILE-ből
futtassa a következő sql-t PFILE létrehozásához SPFILE-ből:

1.2.ábra Pfile létrehozása SPFILE-ből.

SQL> pfile létrehozása spfile-ből;

futtassa ezt a parancsot PFILE létrehozásához SPFILE-ből.

Ez létrehoz egy PFILE-t a $ORACLE_HOME/dbs könyvtárban. A névben az aktuális SID-t fogja használni. Mivel az adatbázis jelenlegi SID-je prd, a név initprd lesz.ora. Másolja a fájlt, hogy az új SID a nevében legyen. Ebben a példában az új név initqa lenne.ora. Lásd az 1.3.ábrát a fájl másolására.

1.3. ábra a régi PFILE másolása az új nevére


$ cd $ORACLE_HOME / dbs
$ pwd
/u01/alkalmazás/oracle/termék/11.2.0/db_1 / dbs
$ is –ls initped.ora
9 –rw-r– 1 oracle oinstall 1106 okt 11 20:17 initprd.ora
$ cp initprd.ora initqa.ora
$

példa a régi PFILE, initdwprd másolására.ora az új PFILE, initdwqa.ora.

Nid alkalmazás használata

a NID alkalmazás használatához oracle felhasználóként be kell jelentkeznie az adatbázis-kiszolgálóra, és végre kell hajtania a következő lépéseket.

  1. állítsa le az adatbázist
  2. indítsa el az adatbázist mount módban
  3. futtassa a NID parancsot
  4. állítsa le az adatbázist

2.1 állítsa le az adatbázist
indítson el egy SQLplus munkamenetet, majd írja be a shutdown azonnali parancsot. A 2.1. ábra ezt a lépést mutatja be.

2.ábra.1 az adatbázis leállítása

$ sqlplus / as sysdba

SQL * Plus: Release 11.2.0.3.0 termelés Szo október 11 20:02:24 2014

Copyright 1982, 2011, Oracle, Minden jog fenntartva.

kapcsolódott:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 – termelés
a particionálás, OLAP, adatbányászat és a valós alkalmazás tesztelési lehetőségek

SQL>shutdown azonnali
Adatbázis zárva.
Adatbázis leszerelve.
az ORACLE példány leállt.
SQL>

példa a kimenetre az adatbázis leállításakor.

2.2 Az adatbázis indítása csatolási módba

indítson el egy SQLplus munkamenetet, majd írja be a startup mount parancsot. A 2.2. ábra ezt mutatja.

2.2. ábra Az adatbázis indítása csatolási módba

$ sqlplus / as sysdbaSQL * plusz: Release 11.2.0.3.0 termelés Szo október 11 20:02: 24 2014copyright 6982, 2011, Oracle, Minden jog fenntartva.

egy tétlen példányhoz csatlakozik.

SQL>startup mount
ORACLE példány elindult.
teljes rendszer globális terület 535662593 bájt
rögzített méret 1346140 bájt
változó méret 260048292 bájt
Adatbázis pufferek 268435456 bájt
újra pufferek 5832704 bájt
Adatbázis csatlakoztatva.
SQL>

példa a kimenetre, amikor az adatbázist csatolási módba indítja.

írja be az exit parancsot, hogy visszatérjen a shell parancssorba.

2.3 futtassa a NID parancsot
a NID parancs az Oracle program, amely megváltoztatja az adatbázis SID-jét. Használatához szüksége lesz a SYS fiók jelszavára és az új Sid-re az adatbázishoz. Mivel az új SID qa, a parancssor a következő lesz: NID target=SYS dbname = qa. Miután megnyomta az enter billentyűt, a rendszer kéri a SYS-fiók jelszavát. Írja be a jelszót. A rendszer kéri, hogy erősítse meg, hogy meg akarja változtatni az SID-t. A képernyő megjelenítését lásd a 2.3.1. ábrán.

2.3.1. ábra a futó NID parancs képernyőjének megjelenítése

$ nid target=SYS dbname = qa
DBNEWID: kiadás 11.2.0.3.0-termelés Sat okt 11 20:05:54 2014

Copyright 1982, 2011, Oracle és/vagy leányvállalatai. Minden jog fenntartva.

jelszó:
csatlakozik a PRD adatbázishoz (DBID=3949194393)

Csatlakozás a szerver 11.2.0 verziójához

vezérlőfájlok az adatbázisban:
/u01/app/oracle/oradata/prd/control01.ctl
/ u01 / app/oracle/oradata/prd / control02.ctl

az adatbázis azonosítóját és az adatbázis nevét PRD-re változtatja QA-ra? (Y/) => _

kimenet a NID parancs indításából.

írja be az Y-t az adatbázis nevének megváltoztatásához a 2.3.2. ábrán látható módon

2.3.2. ábra Az adatbázis nevének megváltoztatásának megerősítése

$ nid target=SYS dbname = qa
DBNEWID: kiadás 11.2.0.3.0-gyártás Szo okt 11 20:05:54 2014

Copyright 1982, 2011, Oracle és/vagy leányvállalatai. Minden jog fenntartva.

jelszó:
PRD adatbázishoz csatlakozik (DBID=3949194393)

Csatlakozás a szerver 11.2.0 verziójához

vezérlőfájlok az adatbázisban:
/u01/app/oracle/oradata/prd/control01.ctl
/ u02 / app/oracle/oradata/prd / control02.ctl

az adatbázis azonosítóját és az adatbázis nevét PRD-re változtatja QA-ra? (Y/) = > Y

válasz Y a konfimációra.

a program elvégzi a belső változtatásokat és megjeleníti az előrehaladást. Ha elkészült, akkor visszatér a shell prompt ábrán látható 2.3.3.

ábra 2.3.3 kimenet a NID programból

adatfájl /u02/app/oracle/oradata/prd/dw03.db-dbid megváltozott, új nevet írt
Datafile /u02/app/oracle/oradata/prd/dw04.db-dbid megváltozott, új nevet írt
Datafile /u02/app/oracle/oradata/prd/dw05.db-dbid megváltozott, új nevet írt
Datafile /u01/app/oracle/oradata/prd/temp01.db-dbid megváltozott, új nevet írt
Vezérlőfájl /u01/app/oracle/oradata/prd/control01.a ctl – dbid megváltozott, új nevet írt
Vezérlőfájl /u02/app/oracle/oradata/prd/control02.a ctl – dbid megváltozott, új nevet írt
a példány leállt

az adatbázis neve QA-ra változott.
módosítsa a paraméterfájlt, és hozzon létre egy új jelszófájlt az újraindítás előtt.
az adatbázis QA Adatbázisazonosítója 1714809981
az adatbázis összes korábbi biztonsági mentése és archivált újra naplója használhatatlan.
az adatbázis nem ismeri a helyreállítási területen található previos biztonsági mentéseket és archivált naplókat.
Adatbázis hase leállt, nyitott adatbázis RESETLOGS opciót.
sikeresen megváltoztatta az adatbázis nevét és azonosítóját.
DBNEWID-sikeresen befejeződött.

$

a sikeres befejezést mutató Nid program kimenete.

2.4 állítsa le az adatbázist
az adatbázist újra le kell állítani. Ismételje meg az SQLplus munkamenet indítását, és írja be a parancsot azonnali leállítás a 2.1 lépésben látható módon.

3. SID hivatkozások módosítása

az adatbázis paraméterben, a tnsnames-ben, az oratab-ban és a környezeti fájlokban változtatásokat kell végrehajtani, hogy tükrözzék az adatbázis SID-jének változását.

  1. az Oracle paraméterfájlt át kell nevezni és szerkeszteni.
  2. az Oratabnak át kell neveznie a SID-et.
  3. az ora fájlnak át kell neveznie a SID-et
  4. ha az ORACLE_SID be van állítva a profilban, akkor azt meg kell változtatni.

3.1 Az Oracle paraméterfájlt át kell nevezni és szerkeszteni

az Oracle paraméterfájlt szerkeszteni kell, és két sort kell módosítani. Módosítsa a paraméterfájl tárolásának helyét, a $ORACLE_HOME / dbs mappát. Lásd a 3.1.1.ábrát.

3.1.ábra.1 Váltás a paraméterfájl mappára


$ cd $ORACLE_HOME / dbs
$ pwd
/u01/alkalmazás/oracle/termék/11.2.0/db_1/dbs
$ is –ls initqa.ora
9 –rw-r– 1 oracle oinstall 1106 okt 11 20:17 initqa.ora
$

példa a paraméterfájl mappára való áttérésre a paraméterfájl szerkesztésének előkészítéséhez.

Szerkessze a fájlt, és keresse meg a módosítani kívánt két sort. A sorok dbname és instance_name betűkkel kezdődnek. Lásd a 3.1.2. ábrát egy példa arra, hogyan nézne ki a paraméterfájl a módosítások előtt.

3.1.ábra.2 lekérdezés, hogy ha SPFILE van használatban.


dbname=”prd”
db_recovery_file_dest_size=64424509440
db_recovery_file_dest=”/u01/app/oracle/flash_recovery_area”
fast_start_mttr_target=120
instance_name=prd

a kiemelt sorokat új SID névre kell változtatni.

meg kell változtatni a Sid értéket a két sor a régi SID, prd, az új SID, qa. Lásd a 3.1.3. ábrát arról, hogy a vonalak hogyan néznének ki a változások után.

3.1.ábra.3 lekérdezés, hogy az SPFILE használatban van-e


dbname=”qa”
db_recovery_file_dest_size=64424509440
db_recovery_file_dest=”/u01/app/oracle/flash_recovery_area”
fast_start_mttr_target=120
instance_name=qa

paraméter fájl mutatja SID névváltozások szerkesztés után.

mentse el a fájlt, majd lépjen ki a szerkesztőből.

3.2 az Oratabnak át kell neveznie a SID-et

az Oracle ORATAB fájlnak, az /etc/oratab fájlnak meg kell változtatnia a Sid hivatkozást a régi SID-ről. prd az új SID-nek. qa. Szerkessze a fájlt, és változtassa meg a régi SID bejegyzést az új SID-re. Lásd a 3.2.1.ábrát.

3.2.1 ábra példa módosított ORATAB fájlra /etc/oratab

# több bejegyzés ugyanazzal a $ORACLE_SID-vel nem megengedett.
#
#
#1120:/u01/app/oracle/product/11.2.0:N
orcl:/u01/app/oracle/product/11.2.0/db_1:Y
#prd:/u01/app/oracle/product/11.2.0/db_1:Y
qa:/u01/app/oracle/product/11.2.0/db_1:Y;

példa ORATAB fájl mutatja megváltozott Sid hivatkozást dwprd dwqa. A módosított érték félkövér.

3.3 TNSNAMES szüksége van a SID átnevezték

az Oracle TNSNANES fájl, tnsnames.ora, szüksége lesz a már a Sid referencia megváltozott a régi SID. dwprd az új SID-nek. dwqa. Meg kell változtatnia a gazdagép címét is, hogy megfeleljen az új rendszernek. A TNSNAMES a $ORACLE_HOME/network/admin mappában található. Szerkessze a fájlt, és módosítsa a régi SID bejegyzést az új SID-re, és módosítsa a gazdagép címét, hogy megfeleljen az új rendszernek. Lásd a 3.3.1.ábrát.

ábra 3.3.1 példa módosított tnsnames fájl $ORACLE_HOME/network/admin/tnsnames.ora

(CONNECT_DATA =
(SID = PLSExtProc)
(bemutatás = RO)
)
) QA =
(leírás =
(ADDRESS_LIST =
(cím = (protokoll = TCP) (HOST = 192.188.1.86) (PORT = 1521))
)
(CONNECT_DATA =
(SZOLGÁLTATÁS_NEVE = minőségbiztosítás)
(UR = A)
)
)

példa tnsnames fájl mutatja megváltozott Sid hivatkozást dwprd dwqa és HOST address beállítása új címet. A módosított érték félkövér.

3.4 ha az ORACLE_SID be van állítva a profilban, akkor azt meg kell változtatni.

a $ORACLE_SID környezeti változó általában SID értékre van állítva a bejelentkezési profil szkriptben, $HOME/.profil vagy $itthon/.bash_profile. Keresse meg és módosítsa az SID beállítást az új értékre. A 3.4.1.ábra példát mutat a $ORACLE_SID érték parancssorból történő megjelenítésére.

3.4.1. ábra a $ORACLE_SID érték megjelenítése


$ echo $ORACLE_SID
prd
$

az echo parancs használata a $ORACLE_SID érték megjelenítéséhez.

ki kell jelentkeznie, majd újra be kell jelentkeznie, miután megváltoztatta az oracle_sid értéket a profil szkriptben, hogy beállítsa azt a környezetben.

4. Adatbázis indítása és módosítások véglegesítése

az utolsó lépés, amelyet be kell fejezni, az adatbázis indítása a csatolási szintig, majd a resetlogs opcióval történő megnyitása. Indítson el egy SQLplus munkamenetet, indítsa el az adatbázist a mount módba az indítási mount megadásával. Ha az 1.lépésben létre kellett hoznia egy PFILE-t, akkor a start parancs a startup pfile=initSID.ora mount. Tehát a mi példánkban az indítási pfile=initqa lenne.ora mount. Ezután nyissa meg az adatbázist az Alter database open resetlogs; paranccsal. Lásd a 4.1.ábrát a képernyő megjelenítésére.

4.1. ábra Az adatbázis indítása és a naplók visszaállítása

$ sqlplus / as sysdba

SQL * Plus: Release 11.2.0.3.0 termelés Szo október 11 20:02:24 2014
Copyright 1982, 2011, Oracle, Minden jog fenntartva.
egy tétlen példányhoz csatlakozik.

SQL>startup mount
ORACLE példány elindult.
teljes rendszer globális terület 535662593 bájt
rögzített méret 1346140 bájt
változó méret 260048292 bájt
Adatbázis pufferek 268435456 bájt
újra pufferek 5832704 bájt
Adatbázis csatlakoztatva.
SQL> alter adatbázis nyitott resetlogs;

Adatbázis megváltozott.

SQL>

az adatbázis indítása mount módban, majd megnyitása a resetlogs opcióval.

ha az 1.lépésben létre kellett hoznia egy PFILE-t, akkor vissza kell konvertálnia a PFILE-t SPFILE-vé. Ez a CREATE SPFILE paranccsal történik. Az SQL parancssorba írja be az spfile létrehozása parancsot a pfile-ből.

következtetés

az Oracle adatbázis Adatbázisnevének megváltoztatása bonyolultnak tűnhet, de elvégezhető az alapvető rendszerismeretekkel. Az ebben a dokumentumban ismertetett eljárásokat követve a DBA minimális leállási idővel végezheti el a feladatot az adatbázis számára.

Leave a Reply

Az e-mail-címet nem tesszük közzé.