Oracle-adatbázis létrehozása Azure-beli virtuális gépen
A következőkre vonatkozik: ✔️ Linux rendszerű virtuális gépek
Ez a cikk azt ismerteti, hogyan helyezhet üzembe azure-beli virtuális gépet (VM-et) az Azure CLI-vel az Oracle Marketplace katalógusának rendszerképéből Oracle Database 19c-adatbázis létrehozásához. A kiszolgáló üzembe helyezése után SSH-val csatlakoztatja a kiszolgálót az Oracle-adatbázis konfigurálásához.
Előfeltételek
-
If you don't have an Azure subscription, create an Azure free account before you begin.
Az Azure Cloud Shell vagy az Azure CLI.
Ebben a rövid útmutatóban interaktívan futtathatja az Azure CLI-parancsokat az Azure Cloud Shellben. A Parancsok Cloud Shellben való futtatásához válassza a Kódblokk jobb felső sarkában található Open CloudShell lehetőséget. Válassza a Másolás lehetőséget a kód másolásához, majd illessze be a Cloud Shellbe a futtatáshoz. A Cloud Shellt az Azure Portalon is futtathatja. A Cloud Shell mindig az Azure CLI legújabb verzióját használja.
Másik lehetőségként helyileg is telepítheti az Azure CLI-t a parancsok futtatásához. A cikkben ismertetett lépésekhez az Azure CLI 2.0.4-es vagy újabb verziója szükséges. Futtassa az az verziót a telepített verzió és a függő kódtárak megtekintéséhez, és futtassa az az upgrade-t a frissítéshez. Ha helyi telepítést használ, jelentkezzen be az Azure-ba az az login paranccsal.
Erőforráscsoport létrehozása
Hozzon létre egy erőforráscsoportot az az group create paranccsal. Az Azure-erőforráscsoport olyan logikai tároló, amelybe a rendszer üzembe helyezi és kezeli az Azure-erőforrásokat.
Az alábbi példa egy rg-oracle nevű erőforráscsoportot hoz létre az eastus helyen.
az group create --name rg-oracle --location eastus
Megjegyzés:
Ez a rövid útmutató létrehoz egy Standard_DS2_v2 termékváltozatú virtuális gépet az USA keleti régiójában. A támogatott termékváltozatok listájának régiónkénti megtekintéséhez használja az az vm list-skus parancsot.
Virtuális gép létrehozása
Hozzon létre egy virtuális gépet (VM) az az vm create paranccsal.
Az alábbi példa létrehoz egy vmoracle19c nevű virtuális gépet. SSH-kulcsokat is létrehoz, ha még nem léteznek alapértelmezett kulcshelyen. Egy adott kulcskészlet használatához használja a --ssh-key-value
parancsot.
az vm create \
--name vmoracle19c \
--resource-group rg-oracle \
--image Oracle:oracle-database-19-3:oracle-database-19-0904:latest \
--size Standard_DS2_v2 \
--admin-username azureuser \
--generate-ssh-keys \
--public-ip-address-allocation static \
--public-ip-address-dns-name vmoracle19c
A virtuális gép létrehozása után az Azure CLI az alábbi példához hasonló információkat jelenít meg. Jegyezze fel a publicIpAddress
tulajdonság értékét. Ezzel az IP-címmel érheti el a virtuális gépet.
{
"fqdns": "",
"id": "/subscriptions/{snip}/resourceGroups/rg-oracle/providers/Microsoft.Compute/virtualMachines/vmoracle19c",
"location": "eastus",
"macAddress": "00-0D-3A-36-2F-56",
"powerState": "VM running",
"privateIpAddress": "10.0.0.4",
"publicIpAddress": "13.64.104.241",
"resourceGroup": "rg-oracle"
}
Lemez létrehozása Oracle-adatfájlokhoz
Hozzon létre és csatoljon egy új lemezt oracle-adatfájlokhoz és egy gyors helyreállítási területet (FRA) az az vm disk attach paranccsal.
Az alábbi példa egy oradata01 nevű lemezt hoz létre.
az vm disk attach \
--name oradata01 --new \
--resource-group rg-oracle \
--size-gb 64 --sku StandardSSD_LRS \
--vm-name vmoracle19c
Portok megnyitása a kapcsolathoz
Ebben a feladatban konfigurálnia kell néhány külső végpontot az adatbázis-figyelő számára a virtuális gépet védő Azure hálózati biztonsági csoport (NSG) beállításával.
Hozza létre a virtuális gép NSG-jének létrehozását az az network nsg create paranccsal. Ez a parancs létrehozza a vmoracle19cNSG NSG-t a virtuális géphez való hozzáférés szabályozására szolgáló szabályokhoz:
az network nsg create --resource-group rg-oracle --name vmoracle19cNSG
Hozzon létre egy NSG-szabályt az az network nsg rule create paranccsal. Ez a parancs létrehozza az engedélyezési NSG-szabályt az Oracle-adatbázishoz való távoli hozzáférés végpontjának megnyitásához:
az network nsg rule create \ --resource-group rg-oracle \ --nsg-name vmoracle19cNSG \ --name allow-oracle \ --protocol tcp \ --priority 1001 \ --destination-port-range 1521
Hozzon létre egy második NSG-szabályt a végpont megnyitásához az Oracle-hez való távoli hozzáféréshez. Ez a parancs létrehozza az allow-oracle-EM NSG szabályt:
az network nsg rule create \ --resource-group rg-oracle \ --nsg-name vmoracle19cNSG \ --name allow-oracle-EM \ --protocol tcp \ --priority 1002 \ --destination-port-range 5502
Szükség esetén használja az az network public-ip show parancsot a virtuális gép nyilvános IP-címének lekéréséhez:
az network public-ip show \ --resource-group rg-oracle \ --name vmoracle19cPublicIP \ --query "ipAddress" \ --output tsv
Virtuálisgép-környezet előkészítése
Hozzon létre egy SSH-munkamenetet a virtuális géppel. Cserélje le a
<publicIPAddress>
részt a virtuális gép nyilvános IP-címének értékére, például10.200.300.4
:ssh azureuser@<publicIPAddress>
Váltás a gyökérfelhasználóra:
sudo su -
Keresse meg a legutóbb létrehozott lemezeszközt, amelyet oracle-adatfájlok tárolására szeretne formázni:
ls -alt /dev/sd*|head -1
A kimenet a következő példához hasonló:
brw-rw----. 1 root disk 8, 16 Dec 8 22:57 /dev/sdc
Gyökérfelhasználóként használja a parancsot az
parted
eszköz formázására.Először hozzon létre egy lemezcímkét:
parted /dev/sdc mklabel gpt
Ezután hozzon létre egy elsődleges partíciót, amely a teljes lemezre kiterjed:
parted -a optimal /dev/sdc mkpart primary 0GB 64GB
Végül ellenőrizze az eszköz adatait a metaadatok nyomtatásával:
parted /dev/sdc print
A kimenet a következő példához hasonló:
Model: Msft Virtual Disk (scsi) Disk /dev/sdc: 68.7GB Sector size (logical/physical): 512B/4096B Partition Table: gpt Disk Flags: Number Start End Size File system Name Flags 1 1049kB 64.0GB 64.0GB ext4 primary
Hozzon létre egy fájlrendszert az eszközpartíción:
mkfs -t ext4 /dev/sdc1
A kimenet a következő példához hasonló:
mke2fs 1.42.9 (28-Dec-2013) Discarding device blocks: done Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 3907584 inodes, 15624704 blocks 781235 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=2164260864 477 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done
Csatlakoztatási pont létrehozása:
mkdir /u02
Csatlakoztassa a lemezt:
mount /dev/sdc1 /u02
A csatlakoztatási pont engedélyeinek módosítása:
chmod 777 /u02
Adja hozzá a csatlakoztatást a /etc/fstab fájlhoz :
echo "/dev/sdc1 /u02 ext4 defaults 0 0" >> /etc/fstab
Fontos
Ez a parancs egy adott UUID nélkül csatlakoztatja az /etc/fstab fájlt, ami megakadályozhatja a lemez sikeres újraindítását. Mielőtt megkísérli újraindítani a lemezt, frissítse az /etc/fstab bejegyzést úgy, hogy tartalmazza a csatlakoztatási pont UUID azonosítóját.
Frissítse a /etc/hosts fájlt a nyilvános IP-címmel és a cím állomásnevével. Módosítsa a
<Public IP>
két<VMname>
részt a tényleges értékeknek megfelelően:echo "<Public IP> <VMname>.eastus.cloudapp.azure.com <VMname>" >> /etc/hosts
Adja hozzá a virtuális gép tartománynevét a /etc/hostname fájlhoz . A következő parancs feltételezi, hogy az erőforráscsoport és a virtuális gép az eastus régióban jön létre:
sed -i 's/$/\.eastus\.cloudapp\.azure\.com &/' /etc/hostname
Nyisson meg tűzfalportokat.
Mivel Standard kiadás Linux alapértelmezés szerint engedélyezve van a Marketplace-rendszerképen, meg kell nyitnunk a tűzfalat az 1521-et figyelő adatbázis és az Enterprise Manager Express 5502-s portjának forgalmához. Futtassa a következő parancsokat gyökérfelhasználóként:
firewall-cmd --zone=public --add-port=1521/tcp --permanent firewall-cmd --zone=public --add-port=5502/tcp --permanent firewall-cmd --reload
Az adatbázis létrehozása
Az Oracle szoftver már telepítve van a Marketplace-lemezképen. Hozzon létre egy mintaadatbázist az alábbiak szerint.
Váltás az oracle-felhasználóra :
sudo su - oracle
Indítsa el az adatbázis-figyelőt:
lsnrctl start
A kimenet a következő példához hasonló:
LSNRCTL for Linux: Version 19.0.0.0.0 - Production on 20-OCT-2020 01:58:18 Copyright (c) 1991, 2019, Oracle. All rights reserved. Starting /u01/app/oracle/product/19.0.0/dbhome_1/bin/tnslsnr: please wait... TNSLSNR for Linux: Version 19.0.0.0.0 - Production Log messages written to /u01/app/oracle/diag/tnslsnr/vmoracle19c/listener/alert/log.xml Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=vmoracle19c.eastus.cloudapp.azure.com)(PORT=1521))) Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521)) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 19.0.0.0.0 - Production Start Date 20-OCT-2020 01:58:18 Uptime 0 days 0 hr. 0 min. 0 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Log File /u01/app/oracle/diag/tnslsnr/vmoracle19c/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=vmoracle19c.eastus.cloudapp.azure.com)(PORT=1521))) The listener supports no services The command completed successfully
Hozzon létre egy adatkönyvtárat az Oracle-adatfájlokhoz:
mkdir /u02/oradata
Futtassa az Adatbázis-létrehozási segédet:
dbca -silent \ -createDatabase \ -templateName General_Purpose.dbc \ -gdbname oratest1 \ -sid oratest1 \ -responseFile NO_VALUE \ -characterSet AL32UTF8 \ -sysPassword OraPasswd1 \ -systemPassword OraPasswd1 \ -createAsContainerDatabase false \ -databaseType MULTIPURPOSE \ -automaticMemoryManagement false \ -storageType FS \ -datafileDestination "/u02/oradata/" \ -ignorePreReqs
Az adatbázis létrehozása néhány percet vesz igénybe.
A kimenet a következő példához hasonló:
Prepare for db operation 10% complete Copying database files 40% complete Creating and starting Oracle instance 42% complete 46% complete 50% complete 54% complete 60% complete Completing Database Creation 66% complete 69% complete 70% complete Executing Post Configuration Actions 100% complete Database creation complete. For details check the logfiles at: /u01/app/oracle/cfgtoollogs/dbca/oratest1. Database Information: Global Database Name:oratest1 System Identifier(SID):oratest1 Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/oratest1/oratest1.log" for further details.
Oracle-változók beállítása:
A csatlakozás előtt be kell állítania a környezeti változót
ORACLE_SID
:export ORACLE_SID=oratest1
A változót a
ORACLE_SID
következő paranccsal is hozzá kell adnia aoracle
felhasználók .bashrc fájljához a jövőbeli bejelentkezésekhez:echo "export ORACLE_SID=oratest1" >> ~oracle/.bashrc
Adatbázis indításának és leállításának automatizálása
Az Oracle-adatbázis alapértelmezés szerint nem indul el automatikusan a virtuális gép újraindításakor. Az Oracle-adatbázis automatikus indításának beállításához először jelentkezzen be gyökérként. Ezután hozzon létre és frissítsen néhány rendszerfájlt.
Jelentkezzen be gyökérfelhasználóként:
sudo su -
Módosítsa az automatikus indítási jelzőt a /etc/oratab fájlban
N
lévőreY
:sed -i 's/:N/:Y/' /etc/oratab
Hozzon létre egy /etc/init.d/dbora nevű fájlt, és adja hozzá a következő bash-parancsot a fájlhoz:
#!/bin/sh # chkconfig: 345 99 10 # Description: Oracle auto start-stop script. # # Set ORA_HOME to be equivalent to $ORACLE_HOME. ORA_HOME=/u01/app/oracle/product/19.0.0/dbhome_1 ORA_OWNER=oracle case "$1" in 'start') # Start the Oracle databases: # The following command assumes that the Oracle sign-in # will not prompt the user for any values. # Remove "&" if you don't want startup as a background process. su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart $ORA_HOME" & touch /var/lock/subsys/dbora ;; 'stop') # Stop the Oracle databases: # The following command assumes that the Oracle sign-in # will not prompt the user for any values. su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut $ORA_HOME" & rm -f /var/lock/subsys/dbora ;; esac
Fájlok engedélyeinek módosítása a
chmod
következő paranccsal:chgrp dba /etc/init.d/dbora chmod 750 /etc/init.d/dbora
Szimbolikus hivatkozások létrehozása indításhoz és leállításhoz:
ln -s /etc/init.d/dbora /etc/rc.d/rc0.d/K01dbora ln -s /etc/init.d/dbora /etc/rc.d/rc3.d/S99dbora ln -s /etc/init.d/dbora /etc/rc.d/rc5.d/S99dbora
A módosítások teszteléséhez indítsa újra a virtuális gépet:
reboot
Clean up resources
Miután befejezte az első Oracle-adatbázis feltárását az Azure-ban, és a virtuális gépre már nincs szükség, az az group delete paranccsal eltávolíthatja az erőforráscsoportot, a virtuális gépet és az összes kapcsolódó erőforrást.
az group delete --name rg-oracle
Következő lépések
- Adatbázis védelme az Azure-ban oracle biztonsági mentési stratégiákkal
- Oracle-megoldások felfedezése az Azure-ban
- Az Oracle automatizált tárolókezelés telepítése és konfigurálása
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: