Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Platí pro: ✔️ Virtuální počítače s Linuxem
Tento článek popisuje, jak pomocí Azure CLI nasadit virtuální počítač Azure z image galerie Oracle Marketplace k vytvoření databáze Oracle Database 19c. Po nasazení serveru připojíte server přes SSH a nakonfigurujete databázi Oracle.
Požadavky
-
Pokud nemáte účet Azure, vytvořte si bezplatný účet před tím, než začnete.
Azure Cloud Shell nebo Azure CLI.
Příkazy Azure CLI můžete v tomto rychlém startu spustit interaktivně v Azure Cloud Shellu. Pokud chcete příkazy spustit v Cloud Shellu, vyberte Otevřít CloudShell v pravém horním rohu bloku kódu. Výběrem Kopírovat zkopírujte kód a vložte ho do Cloud Shellu ke spuštění. Cloud Shell můžete spustit také na webu Azure Portal. Cloud Shell vždy používá nejnovější verzi Azure CLI.
Případně můžete azure CLI nainstalovat místně a spouštět příkazy. Kroky v tomto článku vyžadují Azure CLI verze 2.0.4 nebo novější. Chcete-li zobrazit nainstalovanou verzi a závislé knihovny, spusťte příkaz az version, a spusťte az upgrade pro upgrade. Pokud používáte místní instalaci, přihlaste se k Azure pomocí příkazu az login .
Vytvořit skupinu zdrojů
Vytvořte skupinu prostředků pomocí příkazu az group create. Skupina prostředků Azure je logický kontejner, do kterého se nasazují a spravují prostředky Azure.
Následující příklad vytvoří skupinu prostředků s názvem rg-oracle v lokalitě eastus.
az group create --name rg-oracle --location eastus
Poznámka:
Tato úvodní příručka vytvoří virtuální počítač SKU Standard_DS2_v2 v oblasti východ USA. Pokud chcete zobrazit seznam podporovaných skladových položek podle oblastí, použijte příkaz az vm list-skus .
Vytvoření virtuálního počítače
Vytvořte virtuální počítač pomocí příkazu az vm create .
Následující příklad vytvoří virtuální počítač s názvem vmoracle19c. Vytvoří také klíče SSH, pokud ještě neexistují ve výchozím umístění klíče. Pokud chcete použít konkrétní sadu klíčů, můžete použít --ssh-key-value možnost s příkazem.
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
Po vytvoření virtuálního počítače azure CLI zobrazí podobné informace jako v následujícím příkladu. Poznamenejte si hodnotu vlastnosti publicIpAddress . Tuto IP adresu použijete pro přístup k virtuálnímu počítači.
{
"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"
}
Vytvoření disku pro datové soubory Oracle
Vytvořte a připojte nový disk pro datové soubory Oracle a rychlou oblast obnovení (FRA) pomocí příkazu az vm disk attach .
Následující příklad vytvoří disk s názvem oradata01.
az vm disk attach \
--name oradata01 --new \
--resource-group rg-oracle \
--size-gb 64 --sku StandardSSD_LRS \
--vm-name vmoracle19c
Otevření portů pro připojení
V této úloze musíte nakonfigurovat některé externí koncové body, které bude naslouchací proces databáze používat, nastavením skupiny zabezpečení sítě Azure (NSG), která chrání virtuální počítač.
Pomocí příkazu az network nsg create vytvořte NSG pro virtuální počítač. Tento příkaz vytvoří skupinu zabezpečení sítě Vmoracle19cNSG pro pravidla pro řízení přístupu k virtuálnímu počítači:
az network nsg create --resource-group rg-oracle --name vmoracle19cNSGVytvořte pravidlo NSG pomocí příkazu az network nsg rule create . Tento příkaz vytvoří pravidlo allow-oracle NSG pro otevření koncového bodu pro vzdálený přístup k databázi Oracle:
az network nsg rule create \ --resource-group rg-oracle \ --nsg-name vmoracle19cNSG \ --name allow-oracle \ --protocol tcp \ --priority 1001 \ --destination-port-range 1521Vytvořte druhé pravidlo NSG pro otevření koncového bodu pro vzdálený přístup k Oracle. Tento příkaz vytvoří pravidlo NSG allow-oracle-EM :
az network nsg rule create \ --resource-group rg-oracle \ --nsg-name vmoracle19cNSG \ --name allow-oracle-EM \ --protocol tcp \ --priority 1002 \ --destination-port-range 5502Vytvořte pravidlo NSG pomocí příkazu az network nsg rule create . Tento příkaz vytvoří pravidlo allow-ssh NSG pro otevření koncového bodu pro vzdálený přístup přes ssh:
az network nsg rule create \ --resource-group rg-oracle \ --nsg-name vmoracle19cNSG \ --name allow-ssh \ --protocol tcp \ --priority 1001 \ --destination-port-range 22Podle potřeby pomocí příkazu az network public-ip show získejte veřejnou IP adresu vašeho virtuálního počítače:
az network public-ip show \ --resource-group rg-oracle \ --name vmoracle19cPublicIP \ --query "ipAddress" \ --output tsv
Příprava prostředí virtuálního počítače
Vytvořte relaci SSH s virtuálním počítačem.
<publicIPAddress>Část nahraďte hodnotou veřejné IP adresy vašeho virtuálního počítače, například10.200.300.4:ssh azureuser@<publicIPAddress>Přepněte na uživatele root:
sudo su -Vyhledejte naposledy vytvořené diskové zařízení, které chcete formátovat pro ukládání datových souborů Oracle:
ls -alt /dev/sd*|head -1Výstup je podobný tomuto příkladu:
brw-rw----. 1 root disk 8, 16 Dec 8 22:57 /dev/sdcJako uživatel root použijte
partedpříkaz k formátování zařízení.Nejprve vytvořte popisek disku:
parted /dev/sdc mklabel gptDále vytvořte primární oddíl, který pokrývá celý disk:
parted -a optimal /dev/sdc mkpart primary 0GB 64GBNakonec zkontrolujte podrobnosti o zařízení tiskem jeho metadat:
parted /dev/sdc printVýstup je podobný tomuto příkladu:
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
Vytvořte v oddílu zařízení systém souborů:
mkfs -t ext4 /dev/sdc1Výstup je podobný tomuto příkladu:
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: doneVytvořte přípojný bod:
mkdir /u02Připojte disk:
mount /dev/sdc1 /u02Změna oprávnění pro přípojný bod:
chmod 777 /u02Přidejte připojení do souboru /etc/fstab :
echo "/dev/sdc1 /u02 ext4 defaults 0 0" >> /etc/fstabDůležité
Tento příkaz připojí soubor /etc/fstab bez konkrétního UUID, což může zabránit úspěšnému restartování disku. Než se pokusíte restartovat disk, aktualizujte položku /etc/fstab tak, aby obsahovala UUID přípojného bodu.
Aktualizujte soubor /etc/hosts s veřejnou IP adresou a názvem hostitele. Změňte
<Public IP>a dvě části označené<VMname>, aby odpovídaly vašim skutečným hodnotám.echo "<Public IP> <VMname>.eastus.cloudapp.azure.com <VMname>" >> /etc/hostsPřidejte název domény virtuálního počítače do souboru /etc/hostname . Následující příkaz předpokládá vytvoření skupiny prostředků a virtuálního počítače v oblasti eastus :
sed -i 's/$/\.eastus\.cloudapp\.azure\.com &/' /etc/hostnameOtevřete porty firewallu.
Vzhledem k tomu, že je na image Marketplace ve výchozím nastavení povolená služba SELinux, musíme otevřít bránu firewall pro provoz na databázovém portu 1521 a na portu Enterprise Manager Express 5502. Jako uživatel kořenového adresáře spusťte následující příkazy:
firewall-cmd --zone=public --add-port=1521/tcp --permanent firewall-cmd --zone=public --add-port=5502/tcp --permanent firewall-cmd --reload
Vytvoření databáze
Na imagi Marketplace je už nainstalovaný software Oracle. Následujícím způsobem vytvořte ukázkovou databázi.
Přepněte na uživatele Oracle :
sudo su - oracleSpusťte naslouchací proces databáze:
lsnrctl startVýstup se podobá následujícímu příkladu:
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 successfullyVytvořte datový adresář pro datové soubory Oracle:
mkdir /u02/oradataSpusťte Pomocníka pro vytváření databází:
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/" \ -ignorePreReqsVytvoření databáze trvá několik minut.
Výstup se podobá následujícímu příkladu:
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.Nastavení proměnných Oracle:
Než se připojíte, musíte nastavit proměnnou
ORACLE_SIDprostředí:export ORACLE_SID=oratest1Proměnnou
ORACLE_SIDbyste také měli přidat dooraclesouboru .bashrc pro budoucí přihlášení uživatele pomocí následujícího příkazu:echo "export ORACLE_SID=oratest1" >> ~oracle/.bashrc
Automatizace spuštění a vypnutí databáze
Databáze Oracle se ve výchozím nastavení automaticky nespustí při restartování virtuálního počítače. Pokud chcete databázi Oracle nastavit tak, aby se spustila automaticky, nejprve se přihlaste jako root. Pak vytvořte a aktualizujte některé systémové soubory.
Přihlaste se jako uživatel root:
sudo su -Změňte příznak automatického spuštění z
NnaYv souboru /etc/oratab:sed -i 's/:N/:Y/' /etc/oratabVytvořte soubor s názvem /etc/init.d/dbora a do souboru přidejte následující příkaz Bash:
#!/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 ;; esacPomocí příkazu změňte oprávnění k souborům
chmod:chgrp dba /etc/init.d/dbora chmod 750 /etc/init.d/dboraVytvoření symbolických odkazů pro spuštění a vypnutí:
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/S99dboraPokud chcete otestovat změny, restartujte virtuální počítač:
reboot
Vyčistěte zdroje
Po dokončení zkoumání první databáze Oracle v Azure a virtuální počítač už není potřeba, můžete pomocí příkazu az group delete odebrat skupinu prostředků, virtuální počítač a všechny související prostředky.
az group delete --name rg-oracle
Další kroky
- Ochrana databáze v Azure pomocí strategií zálohování Oracle
- Prozkoumání řešení Oracle v Azure
- Instalace a konfigurace správy automatizovaného úložiště Oracle