Implementace Oracle Golden Gate na virtuálním počítači Azure s Linuxem
Platí pro: ✔️ Virtuální počítače s Linuxem
Azure CLI slouží k vytváření a správě prostředků Azure z příkazového řádku nebo ve skriptech. Tento průvodce podrobně popisuje, jak pomocí Azure CLI nasadit databázi Oracle 19c z image galerie Azure Marketplace.
Tento dokument ukazuje podrobný postup vytvoření, instalace a konfigurace Oracle Golden Gate na virtuálním počítači Azure. V tomto kurzu jsou dva virtuální počítače nastavené ve skupině dostupnosti v jedné oblasti. Stejný kurz můžete použít k nastavení OracleGolden Gate pro virtuální počítače v různých Zóny dostupnosti v jedné oblasti Azure nebo pro virtuální počítače nastavené ve dvou různých oblastech.
Než začnete, ujistěte se, že je nainstalované Rozhraní příkazového řádku Azure. Další informace najdete v tématu Průvodce instalací Azure CLI.
Úvod
GoldenGate je logický software pro replikaci, který umožňuje replikaci, filtrování a transformaci dat ze zdrojové databáze do cílové databáze v reálném čase. Tato funkce zajišťuje, že se změny ve zdrojové databázi replikují v reálném čase, což umožňuje, aby cílová databáze byla aktuální s nejnovějšími daty.
GoldenGate se používá hlavně pro heterogenní případy replikace, jako je replikace dat z různých zdrojových databází do jedné databáze. Například datový sklad. Můžete ho také použít pro migrace mezi platformami, jako jsou SPARC a AIX do prostředí x86 s Linuxem a pokročilé scénáře vysoké dostupnosti a škálovatelnosti.
GoldenGate je také vhodný pro téměř nulové výpadky migrace, protože podporuje online migrace s minimálním přerušením zdrojových systémů.
I když GoldenGate usnadňuje obousměrnou replikaci, musí být aplikace nakonfigurována odpovídajícím způsobem. Kromě toho software umožňuje filtrování a transformaci dat tak, aby splňoval konkrétní obchodní požadavky a umožnil uživatelům využívat replikovaná data pro různé účely.
Příprava prostředí
Pokud chcete provést instalaci Oracle Golden Gate, musíte ve stejné skupině dostupnosti vytvořit dva virtuální počítače Azure. Image z Marketplace, kterou použijete k vytvoření virtuálních počítačů, je Oracle:oracle-database-19-3:oracle-database-19-0904:19.3.1.
Musíte být také obeznámeni s editorem unixových systémů vi a mít základní znalosti X Serveru.
Následující tabulka obsahuje souhrn konfigurace prostředí:
Primární lokalita | Replikace lokality | |
---|---|---|
Verze Oracle | Oracle Database 19.3.1.0 | Oracle Database 19.3.1.0 |
Název počítače | ggVM1 | ggVM2 |
Operační systém | Oracle Linux 7.x | Oracle Linux 7.x |
Oracle SID | CDB1 | CDB1 |
Schéma replikace | TEST | TEST |
Vlastník/replikace Golden Gate | C##GGADMIN | REPUSER |
Proces Golden Gate | EXTORA | REPORA |
Přihlášení k Azure
Otevřete upřednostňované prostředí ve Windows, Linuxu nebo Azure Shellu.
Přihlaste se ke svému předplatnému Azure pomocí příkazu az login . Pak postupujte podle pokynů na obrazovce.
$ az login
Ujistěte se, že jste připojení ke správnému předplatnému tím, že ověříte název předplatného nebo ID.
$ az account show
{ "environmentName": "XXXXX", "homeTenantId": "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "id": "<SUBSCRIPTION_ID>", "isDefault": true, "managedByTenants": [], "name": "<SUBSCRIPTION_NAME>", "state": "Enabled", "tenantId": XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX", "user": { "cloudShellID": true, "name": "aaaaa@bbbbb.com", "type": "user" } }
Generování ověřovacích klíčů
Pro připojení k virtuálnímu počítači Oracle Database používáme ověřování na základě souborů klíčů pomocí SSH. Ujistěte se, že jsou v prostředí vytvořeny vaše soukromé (pojmenovanéid_rsa
) a veřejné (pojmenovanéid_rsa.pub
) soubory klíčů.
Umístění souborů klíčů závisí na vašem zdrojovém systému.
Windows: %USERPROFILE%.ssh Linux: ~/.ssh
Pokud neexistují, můžete vytvořit novou dvojici souborů klíčů.
ssh-keygen -m PEM -t rsa -b 4096
Vytvoří se soubory adresáře a klíče .ssh. Další informace najdete v tématu Vytvoření a správa klíčů SSH pro ověřování na virtuálním počítači s Linuxem v Azure.
Vytvoření skupiny zdrojů
Skupinu prostředků vytvoříte pomocí příkazu az group create. Skupina prostředků Azure je logický kontejner, ve kterém se nasazují a spravují prostředky Azure.
$ az group create --name GoldenGateOnAzureLab --location westus
Vytvoření a konfigurace sítě
Vytvoření virtuální sítě
Pomocí následujícího příkazu vytvořte virtuální síť, která je hostitelem prostředků, které v tomto cvičení vytvoříme.
$ az network vnet create \
--name ggVnet \
--resource-group GoldenGateOnAzureLab \
--address-prefixes "10.0.0.0/16" \
--subnet-name ggSubnet1 \
--subnet-prefixes "10.0.0.0/24"
Vytvoření skupiny zabezpečení sítě (NSG)
Vytvořte skupinu zabezpečení sítě (NSG) pro uzamčení virtuální sítě.
$ az network nsg create \ --resource-group GoldenGateOnAzureLab \ --name ggVnetNSG
Vytvořte pravidlo NSG, které povolí komunikaci v rámci virtuální sítě.
$ az network nsg rule create --resource-group GoldenGateOnAzureLab --nsg-name ggVnetNSG \ --name ggAllowVnet \ --protocol '*' --direction inbound --priority 3400 \ --source-address-prefix 'VirtualNetwork' --source-port-range '*' \ --destination-address-prefix 'VirtualNetwork' --destination-port-range '*' --access allow
Vytvořte pravidlo NSG, které zakáže všechna příchozí připojení.
$ az network nsg rule create \ --resource-group GoldenGateOnAzureLab \ --nsg-name ggVnetNSG \ --name ggDenyAllInBound \ --protocol '*' --direction inbound --priority 3500 \ --source-address-prefix '*' --source-port-range '*' \ --destination-address-prefix '*' --destination-port-range '*' --access deny
Přiřaďte skupinu zabezpečení sítě k podsíti, kde hostujeme naše servery.
$ az network vnet subnet update --resource-group GoldenGateOnAzureLab --vnet-name ggVNet --name ggSubnet1 --network-security-group ggVnetNSG
Vytvoření sítě Bastion
Vytvořte podsíť Bastionu. Název podsítě musí být AzureBastionSubnet.
$ az network vnet subnet create \ --resource-group GoldenGateOnAzureLab \ --name AzureBastionSubnet \ --vnet-name ggVnet \ --address-prefixes 10.0.1.0/24
Vytvořte veřejnou IP adresu pro Bastion.
$ az network public-ip create \ --resource-group GoldenGateOnAzureLab \ --name ggBastionIP \ --sku Standard
Vytvořte prostředek Služby Azure Bastion. Nasazení prostředku trvá přibližně 10 minut.
$ az network bastion create \ --resource-group GoldenGateOnAzureLab \ --name ggBastion \ --public-ip-address ggBastionIP \ --vnet-name ggVnet \ --sku Standard \ --enable-tunneling \ --enable-ip-connect true
Vytvoření virtuálního počítače X Serveru (ggXServer)
Nahraďte heslo a spuštěním následujícího příkazu vytvořte virtuální počítač pracovní stanice s Windows, na kterém nasadíme X Server.
$ az vm create \
--resource-group GoldenGateOnAzureLab \
--name ggXServer \
--image MicrosoftWindowsDesktop:Windows-10:win10-22h2-pro-g2:19045.2604.230207 \
--size Standard_DS1_v2 \
--vnet-name ggVnet \
--subnet ggSubnet1 \
--public-ip-sku Standard \
--nsg "" \
--data-disk-delete-option Delete \
--os-disk-delete-option Delete \
--nic-delete-option Delete \
--admin-username azureuser \
--admin-password <ENTER_YOUR_PASSWORD_HERE>
Připojení k ggXServeru prostřednictvím Bastionu
Připojte se k serveru ggXServer pomocí Bastionu.
- Přechod na ggXServer z webu Azure Portal
- Vyhledání přehledu v levém navigačním panelu
- V nabídce v horní části vyberte Připojit>bastion.
- Výběr karty Bastion
- Klikněte na Použít Bastion.
Příprava ggXServer ke spuštění X Serveru
Pro pozdější kroky tohoto testovacího prostředí se vyžaduje X Server. Provedením následujících kroků nainstalujte a spusťte X Server.
Stáhněte Xming X Server pro Windows do ggXServer a nainstalujte se všemi výchozími možnostmi.
Ujistěte se, že jste na konci instalace nevybrali Spustit .
Spusťte aplikaci XLAUNCH z nabídky Start.
Výběr více oken
Výběr možnosti Spustit bez klienta
Výběr možnosti Bez řízení přístupu
Výběrem možnosti Povolit přístup povolte X Server přes bránu Windows Firewall.
Pokud restartujete virtuální počítač ggXServer , restartujte aplikaci X Server podle kroků 2 až 6 výše.
Vytvoření virtuálních počítačů databáze Oracle
Pro toto cvičení vytvoříme virtuální počítače ggVM1
a ggVM2
image Oracle Database 19c. Pokud ještě neexistují ve výchozím umístění klíče, tento příkaz také vytvoří klíče SSH. Chcete-li použít konkrétní sadu klíčů, použijte možnost --ssh-key-value
. Pokud jste už vytvořili klíče SSH v části Generovat ověřovací klíče , použijí se tyto klíče.
Když vytvoříte nový virtuální počítač, size
parametr určuje velikost a typ vytvořeného virtuálního počítače. V závislosti na oblasti Azure, kterou jste vybrali k vytvoření virtuálního počítače a nastavení předplatného, nemusí být některé velikosti a typy virtuálních počítačů dostupné k použití. Následující příklad používá minimální požadovanou velikost pro toto cvičení Standard_DS1_v2
. Pokud chcete změnit specifikace virtuálního počítače, vyberte jednu z dostupných velikostí virtuálních počítačů Azure. Pro účely testování si můžete vybrat z typů virtuálních počítačů pro obecné účely (D-Series). Pro produkční nebo pilotní nasazení jsou vhodnější optimalizované pro paměť (řady E-Series a M-Series).
Vytvoření ggVM1 (primární)
$ az vm create \
--resource-group GoldenGateOnAzureLab \
--name ggVM1 \
--image Oracle:oracle-database-19-3:oracle-database-19-0904:19.3.1 \
--size Standard_DS1_v2 \
--generate-ssh-keys \
--admin-username azureuser \
--vnet-name ggVnet \
--subnet ggSubnet1 \
--public-ip-address "" \
--nsg "" \
--zone 1
Vytvoření ggVM2 (replikace)
$ az vm create \
--resource-group GoldenGateOnAzureLab \
--name ggVM2 \
--image Oracle:oracle-database-19-3:oracle-database-19-0904:19.3.1 \
--size Standard_DS1_v2 \
--generate-ssh-keys \
--admin-username azureuser \
--vnet-name ggVnet \
--subnet ggSubnet1 \
--public-ip-address "" \
--nsg "" \
--zone 2
Připojení k ggVM1 (primární)
Připojte se k ggVM1 pomocí Bastionu.
- Přejděte na ggVM1 z webu Azure Portal.
- V levém podokně přejděte na Přehled .
- V nabídce v horní části vyberte Připojit>bastion.
- Výběr karty Bastion
- Výběr možnosti Použít Bastion
Vytvoření databáze na ggVM1 (primární)
Na imagi Marketplace je už nainstalovaný software Oracle, takže dalším krokem je vytvoření databáze.
- Spusťte software jako
oracle
uživatel.
$ sudo su - oracle
- Vytvořte databázi pomocí následujícího příkazu. Dokončení tohoto příkazu může trvat 30 až 40 minut.
$ dbca -silent \
-createDatabase \
-templateName General_Purpose.dbc \
-gdbname cdb1 \
-sid cdb1 \
-responseFile NO_VALUE \
-characterSet AL32UTF8 \
-sysPassword OraPasswd1 \
-systemPassword OraPasswd1 \
-createAsContainerDatabase true \
-numberOfPDBs 1 \
-pdbName pdb1 \
-pdbAdminPassword OraPasswd1 \
-databaseType MULTIPURPOSE \
-automaticMemoryManagement false \
-storageType FS \
-datafileDestination "/u01/app/oracle/oradata/" \
-ignorePreReqs
Výstup by měl vypadat podobně jako následující odpověď.
Copying database files
1% complete
2% complete
8% complete
13% complete
19% complete
27% complete
Creating and starting Oracle instance
29% complete
32% complete
33% complete
34% complete
38% complete
42% complete
43% complete
45% complete
Completing Database Creation
48% complete
51% complete
53% complete
62% complete
70% complete
72% complete
Creating Pluggable Databases
78% complete
100% complete
Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/cdb1/cdb1.log" for more details.
- Nastavte proměnné ORACLE_SID a LD_LIBRARY_PATH.
$ export ORACLE_SID=cdb1
$ export LD_LIBRARY_PATH=$ORACLE_HOME/lib
- Spuštěním následujícího příkazu přidejte ORACLE_SID a LD_LIBRARY_PATH do souboru .bashrc, aby se tato nastavení uložila pro budoucí přihlášení. ORACLE_HOME proměnná by již měla být nastavena v souboru .bashrc.
$ sed -i '$ a export ORACLE_SID=cdb1' .bashrc
$ sed -i '$ a export LD_LIBRARY_PATH=$ORACLE_HOME/lib' .bashrc
- Spuštění naslouchacího procesu Oracle
$ lsnrctl start
Připojení k ggVM2 (replikace)
Připojte se k ggVM2 pomocí Bastionu.
- Na webu Azure Portal přejděte na ggVM2 .
- V levém podokně přejděte na Přehled .
- V nabídce v horní části vyberte Připojit>bastion.
- Výběr karty Bastion
- Výběr možnosti Použít Bastion
Otevření portů brány firewall pro ggVM1
Nakonfigurujte bránu firewall tak, aby umožňovala připojení z ggVM1. Následující příkaz se spustí na ggVM2.
$ sudo su -
$ firewall-cmd --permanent --zone=trusted --add-source=10.0.0.5
$ firewall-cmd --reload
$ exit
Vytvoření databáze na ggVM2 (replikace)
- V případě potřeby přepněte na uživatele.
oracle
$ sudo su - oracle
- Vytvoření databáze
$ dbca -silent \
-createDatabase \
-templateName General_Purpose.dbc \
-gdbname cdb1 \
-sid cdb1 \
-responseFile NO_VALUE \
-characterSet AL32UTF8 \
-sysPassword OraPasswd1 \
-systemPassword OraPasswd1 \
-createAsContainerDatabase true \
-numberOfPDBs 1 \
-pdbName pdb1 \
-pdbAdminPassword OraPasswd1 \
-databaseType MULTIPURPOSE \
-automaticMemoryManagement false \
-storageType FS \
-datafileDestination "/u01/app/oracle/oradata/" \
-ignorePreReqs
- Nastavte ORACLE_SID a ORACLE_HOME proměnných.
$ export ORACLE_SID=cdb1
$ export LD_LIBRARY_PATH=$ORACLE_HOME/lib
- Spuštěním následujícího příkazu přidejte ORACLE_SID a LD_LIBRARY_PATH do souboru .bashrc, aby se tato nastavení uložila pro budoucí přihlášení. ORACLE_HOME proměnná by již měla být nastavena v souboru .bashrc.
$ sed -i '$ a export ORACLE_SID=cdb1' .bashrc
$ sed -i '$ a export LD_LIBRARY_PATH=$ORACLE_HOME/lib' .bashrc
- Spuštění naslouchacího procesu Oracle
$ lsnrctl start
Konfigurace Golden Gate na ggVM1
Podle kroků v této části nainstalujte a nakonfigurujte Golden Gate.
Povolení režimu archivačního protokolu na ggVM1 (primární)
- Napojit
sqlplus
$ sqlplus / as sysdba
- Povolení protokolu archivace
SQL> SELECT log_mode FROM v$database;
LOG_MODE
------------
NOARCHIVELOG
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
SQL> ALTER DATABASE ARCHIVELOG;
SQL> ALTER DATABASE OPEN;
- Povolte vynucené protokolování a ujistěte se, že je k dispozici aspoň jeden soubor protokolu.
SQL> ALTER DATABASE FORCE LOGGING;
SQL> ALTER SYSTEM SWITCH LOGFILE;
SQL> ALTER SYSTEM set enable_goldengate_replication=true;
SQL> ALTER PLUGGABLE DATABASE PDB1 OPEN;
SQL> ALTER SESSION SET CONTAINER=CDB$ROOT;
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
SQL> ALTER SESSION SET CONTAINER=PDB1;
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
SQL> EXIT;
Stažení softwaru Golden Gate
Stáhněte soubor 213000_fbo_ggs_Linux_x64_Oracle_shiphome.zip ze stránky pro stažení Oracle Golden Gate pod názvem Ke stažení Oracle GoldenGate 21.3.0.0.0 pro Oracle v Linuxu x86-64.
Po stažení souboru .zip do klientského počítače můžete pomocí protokolu SCP (Secure Copy Protocol) zkopírovat soubory do virtuálních počítačů (ggVM1 a ggVM2). Ujistěte se, že
scp
příkaz odkazuje na správnou cestu k souboru .zip.Kopírovat do ggVM1
Přihlaste se a ujistěte se, že používáte správné předplatné, jak je popsáno v části Přihlášení k Azure.
Pomocí následujícího příkazu PowerShellu otevřete tunel na cílový virtuální počítač.
$ggVM1id=$(az vm show --resource-group GoldenGateOnAzureLab --name ggVM1 --query 'id' --output tsv) az network bastion tunnel --name ggBastion --resource-group GoldenGateOnAzureLab --target-resource-id $ggVM1id --resource-port 22 --port 57500
Pokud se chcete připojit k cílovému virtuálnímu počítači přes tunel, ponechte první příkazový řádek spuštěný a otevřete druhý příkazový řádek . V tomto druhém okně příkazového řádku můžete pomocí následujícího příkazu nahrát soubory z místního počítače do cílového virtuálního počítače. Správný
id_rsa
soubor klíčů pro přístup k virtuálnímu počítači se musí nacházet v.ssh
adresáři nebo můžete odkazovat na jiný soubor klíče pomocí-i
parametru proscp
příkaz.scp -P 57500 "213000_fbo_ggs_Linux_x64_Oracle_shiphome.zip" azureuser@127.0.0.1:.
Kopírovat do ggVM2
Pomocí následujícího příkazu PowerShellu otevřete tunel na cílový virtuální počítač.
$ggVM2id=$(az vm show --resource-group GoldenGateOnAzureLab --name ggVM2 --query 'id' --output tsv) az network bastion tunnel --name ggBastion --resource-group GoldenGateOnAzureLab --target-resource-id $ggVM2id --resource-port 22 --port 57501
Ponechte první příkazový řádek spuštěný a otevřete druhý příkazový řádek pro připojení k cílovému virtuálnímu počítači přes tunel. V tomto druhém okně příkazového řádku můžete pomocí následujícího příkazu nahrát soubory z místního počítače do cílového virtuálního počítače. Správný
id_rsa
soubor klíčů pro přístup k virtuálnímu počítači se musí nacházet v.ssh
adresáři nebo můžete odkazovat na jiný soubor klíče pomocí-i
parametru proscp
příkaz.scp -P 57501 "213000_fbo_ggs_Linux_x64_Oracle_shiphome.zip" azureuser@127.0.0.1:.
Instalace softwaru Golden Gate
Připojte se k ggVM1 pomocí Bastionu.
- Přejděte na ggVM1 z webu Azure Portal.
- Přechod na Přehled na levém panelu
- V nabídce v horní části vyberte Připojit>bastion.
- Výběr karty Bastion
- Výběr možnosti Použít Bastion
Přesuňte soubor .zip do složky /opt a změňte vlastníka.
$ sudo su - $ mv /home/azureuser/*.zip /opt
Rozbalte soubory (pokud ještě není nainstalovaný, nainstalujte nástroj rozbalení).
$ yum install unzip $ cd /opt $ unzip 213000_fbo_ggs_Linux_x64_Oracle_shiphome.zip
Změnit oprávnění
$ chown -R oracle:oinstall /opt/fbo_ggs_Linux_x64_Oracle_shiphome $ exit
Spuštění instalačního programu Golden Gate
$ sudo su - oracle $ export DISPLAY=10.0.0.4:0.0 $ cd /opt/fbo_ggs_Linux_x64_Oracle_shiphome/Disk1 $ ./runInstaller
Instalační program se otevře na serveru ggXServer.
Vyberte Oracle GoldenGate for Oracle Database 21c. Pokračujte výběrem možnosti Další .
Nastavte umístění softwaru na /u01/app/oracle/product/19.0.0/oggcore_1, ujistěte se, že je zaškrtnuté políčko Spustit Manager a vyberte Další , abyste mohli pokračovat.
Na obrazovce Souhrn pokračujte výběrem možnosti Nainstalovat.
Počkejte na dokončení instalace.
Pokračujte výběrem možnosti Zavřít .
Připojte se k ggVM2 pomocí Bastionu.
- Na webu Azure Portal přejděte na ggVM2 .
- Přechod na Přehled v levém podokně
- V nabídce v horní části vyberte Připojit>bastion.
- Výběr karty Bastion
- Výběr možnosti Použít Bastion
Opakování kroků 2 až 10 výše na ggVM2
Nastavení služby na ggVM1 (primární)
Vytvořte nebo aktualizujte soubor tnsnames.ora.
$ sudo su - oracle $ cd $ORACLE_HOME/network/admin $ vi tnsnames.ora
Když se otevře editor vi, musíte stisknout
i
, abyste přepnuli do režimu vložení, pak zkopírujte a vložte obsah souboru a stisknutím klávesyEsc
:wq!
uložte soubor.cdb1= (DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=localhost) (PORT=1521) ) (CONNECT_DATA= (SERVER=dedicated) (SERVICE_NAME=cdb1) ) ) pdb1= (DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=localhost) (PORT=1521) ) (CONNECT_DATA= (SERVER=dedicated) (SERVICE_NAME=pdb1) ) )
Vytvořte vlastníka a uživatelské účty Golden Gate.
Poznámka:
Účet vlastníka musí mít předponu jazyka C##.
$ sqlplus / as sysdba
SQL> CREATE USER C##GGADMIN identified by ggadmin; SQL> EXEC dbms_goldengate_auth.grant_admin_privilege('C##GGADMIN',container=>'ALL'); SQL> GRANT DBA to C##GGADMIN container=all; SQL> connect C##GGADMIN/ggadmin SQL> ALTER SESSION SET CONTAINER=PDB1; SQL> EXIT;
Vytvoření testovacího uživatelského účtu Golden Gate
$ cd /u01/app/oracle/product/19.0.0/oggcore_1 $ sqlplus system/OraPasswd1@pdb1
SQL> CREATE USER test identified by test DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP; SQL> GRANT connect, resource, dba TO test; SQL> ALTER USER test QUOTA 100M on USERS; SQL> connect test/test@pdb1 SQL> @demo_ora_create SQL> @demo_ora_insert SQL> EXIT;
Nakonfigurujte soubor parametrů extrakce.
Spusťte rozhraní příkazového řádku Golden Gate (ggsci):
$ sudo su - oracle $ cd /u01/app/oracle/product/19.0.0/oggcore_1 $ ./ggsci
GGSCI> DBLOGIN USERID test@pdb1, PASSWORD test Successfully logged into database pdb1 GGSCI> ADD SCHEMATRANDATA pdb1.test 2017-05-23 15:44:25 INFO OGG-01788 SCHEMATRANDATA has been added on schema test. 2017-05-23 15:44:25 INFO OGG-01976 SCHEMATRANDATA for scheduling columns has been added on schema test. GGSCI> EDIT PARAMS EXTORA
Stisknutím klávesy
i
přepněte do režimu vložení a zkopírujte a vložte (klikněte pravým tlačítkem myši na okno SSH) do souboru parametrů EXTRACT. Stisknutím klávesy:wq!
Esc soubor uložte.EXTRACT EXTORA USERID C##GGADMIN@cdb1, PASSWORD ggadmin RMTHOST 10.0.0.5, MGRPORT 7809 RMTTRAIL ./dirdat/rt DDL INCLUDE MAPPED DDLOPTIONS REPORT LOGALLSUPCOLS UPDATERECORDFORMAT COMPACT TABLE pdb1.test.TCUSTMER; TABLE pdb1.test.TCUSTORD;
Registrace extrakce integrovaného extrakce.
GGSCI> dblogin userid C##GGADMIN@cdb1, password ggadmin Successfully logged into database CDB$ROOT. GGSCI> REGISTER EXTRACT EXTORA DATABASE CONTAINER(pdb1) 2023-03-03 19:37:01 INFO OGG-02003 Extract group EXTORA successfully registered with database at SCN 2142014. GGSCI> exit
Nastavení kontrolních bodů extrakce a spuštění extrakce v reálném čase
$ ./ggsci
GGSCI> ADD EXTRACT EXTORA, INTEGRATED TRANLOG, BEGIN NOW EXTRACT (Integrated) added. GGSCI> ADD RMTTRAIL ./dirdat/rt, EXTRACT EXTORA, MEGABYTES 10 RMTTRAIL added. GGSCI> START EXTRACT EXTORA Sending START request to MANAGER ... EXTRACT EXTORA starting GGSCI > INFO ALL Program Status Group Lag at Chkpt Time Since Chkpt MANAGER RUNNING EXTRACT RUNNING EXTORA 00:00:11 00:00:04 GGSCI > EXIT
V tomto kroku najdete počáteční SCN, který se použije později, v jiné části.
$ sqlplus / as sysdba
SQL> alter session set container = pdb1; SQL> SELECT current_scn from v$database; CURRENT_SCN ----------- 2172191 SQL> EXIT;
$ ./ggsci GGSCI> EDIT PARAMS INITEXT
Když se otevře editor vi, musíte stisknout
i
, abyste přepnuli do režimu vložení, pak zkopírujte a vložte obsah souboru a stisknutím klávesyEsc
:wq!
uložte soubor.EXTRACT INITEXT USERID C##GGADMIN@cdb1, PASSWORD ggadmin RMTHOST 10.0.0.6, MGRPORT 7809 RMTTASK REPLICAT, GROUP INITREP TABLE pdb1.test.*, SQLPREDICATE 'AS OF SCN 2172191';
GGSCI> ADD EXTRACT INITEXT, SOURCEISTABLE Extract added. GGSCI> EXIT
Nastavení služby na ggVM2 (replikace)
Vytvořte nebo aktualizujte soubor tnsnames.ora.
$ cd $ORACLE_HOME/network/admin $ vi tnsnames.ora
Když se otevře editor vi, musíte stisknout
i
, abyste přepnuli do režimu vložení, pak zkopírujte a vložte obsah souboru a stisknutím klávesyEsc
:wq!
uložte soubor.cdb1= (DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=localhost) (PORT=1521) ) (CONNECT_DATA= (SERVER=dedicated) (SERVICE_NAME=cdb1) ) ) pdb1= (DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=localhost) (PORT=1521) ) (CONNECT_DATA= (SERVER=dedicated) (SERVICE_NAME=pdb1) ) )
Vytvořte replikový účet.
$ sqlplus / as sysdba
SQL> ALTER SYSTEM set enable_goldengate_replication=true; SQL> ALTER SESSION SET CONTAINER = pdb1; SQL> CREATE USER REPUSER IDENTIFIED BY REP_PASS CONTAINER=CURRENT; SQL> GRANT DBA TO REPUSER; SQL> EXEC DBMS_GOLDENGATE_AUTH.GRANT_ADMIN_PRIVILEGE('REPUSER',CONTAINER=>'PDB1'); SQL> CONNECT REPUSER/REP_PASS@PDB1 SQL> EXIT;
Vytvoření testovacího uživatelského účtu Golden Gate
$ cd /u01/app/oracle/product/19.0.0/oggcore_1 $ sqlplus system/OraPasswd1@pdb1
SQL> CREATE USER test identified by test DEFAULT TABLESPACE USERS TEMPORARY TABLESPACE TEMP; SQL> GRANT connect, resource, dba TO test; SQL> ALTER USER test QUOTA 100M on USERS; SQL> CONNECT test/test@pdb1 SQL> @demo_ora_create SQL> EXIT;
Soubor parametrů REPLICAT pro replikaci změn
$ cd /u01/app/oracle/product/19.0.0/oggcore_1 $ ./ggsci
GGSCI> EDIT PARAMS REPORA
Když se otevře editor vi, musíte stisknout
i
, abyste přepnuli do režimu vložení, pak zkopírujte a vložte obsah souboru a stisknutím klávesyEsc
:wq!
uložte soubor.REPLICAT REPORA ASSUMETARGETDEFS DISCARDFILE ./dirrpt/repora.dsc, PURGE, MEGABYTES 100 DDL INCLUDE MAPPED DDLOPTIONS REPORT DBOPTIONS INTEGRATEDPARAMS(parallelism 6) USERID repuser@pdb1, PASSWORD REP_PASS MAP pdb1.test.*, TARGET pdb1.test.*;
Nastavte kontrolní bod replikace.
GGSCI> ADD REPLICAT REPORA, INTEGRATED, EXTTRAIL ./dirdat/rt GGSCI> EDIT PARAMS INITREP
Když se otevře editor vi, musíte stisknout
i
, abyste přepnuli do režimu vložení, pak zkopírujte a vložte obsah souboru a stisknutím klávesyEsc
:wq!
uložte soubor.REPLICAT INITREP ASSUMETARGETDEFS DISCARDFILE ./dirrpt/tcustmer.dsc, APPEND USERID repuser@pdb1, PASSWORD REP_PASS MAP pdb1.test.*, TARGET pdb1.test.*;
GGSCI> ADD REPLICAT INITREP, SPECIALRUN GGSCI> EXIT
Nastavení replikace (ggVM1 a ggVM2)
1. Nastavení replikace na ggVM2 (replikace)
Přihlaste se na ggsci
.
$ cd /u01/app/oracle/product/12.1.0/oggcore_1
$ ./ggsci
GGSCI> EDIT PARAMS MGR
Aktualizujte soubor následujícím kódem.
PORT 7809
ACCESSRULE, PROG *, IPADDR *, ALLOW
Restartujte službu Manager.
GGSCI> STOP MGR
GGSCI> START MGR
GGSCI> EXIT
2. Nastavení replikace na ggVM1 (primární)
Spusťte počáteční načtení a zkontrolujte chyby.
$ cd /u01/app/oracle/product/19.0.0/oggcore_1
$ ./ggsci
GGSCI> START EXTRACT INITEXT
GGSCI> VIEW REPORT INITEXT
3. Nastavení replikace na ggVM2 (replikace)
Změňte číslo SCN číslem, které jste získali dříve.
$ cd /u01/app/oracle/product/19.0.0/oggcore_1
$ ./ggsci
START REPLICAT REPORA, AFTERCSN 2172191
Replikace se spustila a můžete ji otestovat vložením nových záznamů do tabulek TEST.
Zobrazení stavu úlohy a řešení potíží
Zobrazení sestav
Pokud chcete zobrazit sestavy na ggVM1, spusťte následující příkazy.
GGSCI> VIEW REPORT EXTORA
Pokud chcete zobrazit sestavy na ggVM2, spusťte následující příkazy.
GGSCI> VIEW REPORT REPORA
Zobrazení stavu a historie
Pokud chcete zobrazit stav a historii na ggVM1, spusťte následující příkazy.
GGSCI> DBLOGIN USERID C##GGADMIN@CDB1, PASSWORD ggadmin GGSCI> INFO EXTRACT EXTORA, DETAIL
Pokud chcete zobrazit stav a historii na ggVM2, spusťte následující příkazy.
GGSCI> DBLOGIN USERID REPUSER@PDB1 PASSWORD REP_PASS GGSCI> INFO REP REPORA, DETAIL
$ sqlplus test/test@pdb1
SQL> select * from TCUSTMER; SQL> select * from TCUSTORD;
Sledování replikace dat
Připojení k primární databázi na virtuálním počítači ggVM1
$ sqlplus test/test@pdb1
Výběr existujících záznamů z tabulky
SQL> select * from TCUSTORD;
Vytvoření testovacího záznamu
SQL> INSERT INTO TCUSTORD VALUES ('OLLJ',TO_DATE('11-APR-99'),'CYCLE',400,16000,1,102); SQL> COMMIT; SQL> EXIT;
Sledujte transakce vyzvednutou Golden Gate (Poznámka Celkem vložení hodnoty)
$ cd /u01/app/oracle/product/19.0.0/oggcore_1
$ ./ggsci
GGSCI> STATS EXTORA
Sending STATS request to Extract group EXTORA ...
Start of statistics at 2023-03-24 19:41:54.
DDL replication statistics (for all trails):
*** Total statistics since extract started ***
Operations 0.00
Mapped operations 0.00
Unmapped operations 0.00
Other operations 0.00
Excluded operations 0.00
Output to ./dirdat/rt:
Extracting from PDB1.TEST.TCUSTORD to PDB1.TEST.TCUSTORD:
*** Total statistics since 2023-03-24 19:41:34 ***
Total inserts 1.00
Total updates 0.00
Total deletes 0.00
Total upserts 0.00
Total discards 0.00
Total operations 1.00
*** Daily statistics since 2023-03-24 19:41:34 ***
Total inserts 1.00
Total updates 0.00
Total deletes 0.00
Total upserts 0.00
Total discards 0.00
Total operations 1.00
*** Hourly statistics since 2023-03-24 19:41:34 ***
Total inserts 1.00
Total updates 0.00
Total deletes 0.00
Total upserts 0.00
Total discards 0.00
Total operations 1.00
*** Latest statistics since 2023-03-24 19:41:34 ***
Total inserts 1.00
Total updates 0.00
Total deletes 0.00
Total upserts 0.00
Total discards 0.00
Total operations 1.00
End of statistics.
Připojení k primární databázi na virtuálním počítači ggVM2
$ sqlplus test/test@pdb1
Ověření replikace nového záznamu
SQL> select * from TCUSTORD;
CUST ORDER_DAT PRODUCT_ ORDER_ID PRODUCT_PRICE PRODUCT_AMOUNT TRANSACTION_ID ---- --------- -------- ---------- ------------- -------------- -------------- OLLJ 11-APR-99 CYCLE 400 16000 1 102 WILL 30-SEP-94 CAR 144 17520 3 100 JANE 11-NOV-95 PLANE 256 133300 1 100
Instalace a konfigurace Golden Gate v Linuxu Oracle je nyní dokončena.
Odstranění virtuálního počítače ggXServer
Virtuální počítač ggXServer se používá pouze během instalace. Po dokončení tohoto testovacího dokumentu ho můžete bezpečně odstranit, ale zachovat nastavení GoldenGate v testovacím prostředí Azure beze změny.
$ az vm delete --resource-group GoldenGateOnAzureLab --name ggXServer --force-deletion yes
$ az network public-ip delete --resource-group GoldenGateOnAzureLab --name ggXServerPublicIP
Odstranění golden gate v nastavení Azure Labu
Pokud už není potřeba, můžete k odebrání skupiny prostředků, virtuálního počítače a všech souvisejících prostředků pro toto cvičení použít následující příkaz.
$ az group delete --name GoldenGateOnAzureLab
Další kroky
Kurz vytvoření virtuálního počítače s vysokou dostupností
Prozkoumejte ukázky nasazení virtuálního počítače pomocí rozhraní příkazového řádku