Oktatóanyag: Azure Database for PostgreSQL tervezése – Önálló kiszolgáló az Azure CLI használatával
A KÖVETKEZŐKRE VONATKOZIK: Azure Database for PostgreSQL – Önálló kiszolgáló
Fontos
Azure Database for PostgreSQL – Az önálló kiszolgáló a kivezetési útvonalon van. Határozottan javasoljuk, hogy frissítsen az Azure Database for PostgreSQL rugalmas kiszolgálóra. A rugalmas Azure Database for PostgreSQL-kiszolgálóra való migrálással kapcsolatos további információkért lásd: Mi történik az önálló Azure Database for PostgreSQL-kiszolgálóval?
Ebben az oktatóanyagban az Azure CLI (parancssori felület) és egyéb segédprogramok segítségével a következőket sajátíthatja el:
- Azure-adatbázis létrehozása PostgreSQL-kiszolgálóhoz
- A kiszolgáló tűzfalának konfigurálása
- Adatbázis létrehozása a psql segédprogrammal
- Mintaadatok betöltése
- Adatok lekérdezése
- Adatok frissítése
- Adatok visszaállítása
Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.
Előfeltételek
Használja a Bash-környezetet az Azure Cloud Shellben. További információ: A Bash rövid útmutatója az Azure Cloud Shellben.
Ha inkább helyi cli-referenciaparancsokat szeretne futtatni, telepítse az Azure CLI-t. Ha Windows vagy macOS rendszert használ, fontolja meg az Azure CLI Docker-tárolóban való futtatását. További információ: Az Azure CLI futtatása Docker-tárolóban.
Ha helyi telepítést használ, jelentkezzen be az Azure CLI-be az az login parancs futtatásával. A hitelesítési folyamat befejezéséhez kövesse a terminálon megjelenő lépéseket. További bejelentkezési lehetőségekért lásd : Bejelentkezés az Azure CLI-vel.
Amikor a rendszer kéri, először telepítse az Azure CLI-bővítményt. További információ a bővítményekről: Bővítmények használata az Azure CLI-vel.
Futtassa az az version parancsot a telepített verzió és a függő kódtárak megkereséséhez. A legújabb verzióra az az upgrade paranccsal frissíthet.
Az Azure Cloud Shell elindítása
Az Azure Cloud Shell egy olyan ingyenes interaktív kezelőfelület, amelyet a jelen cikkben található lépések futtatására használhat. A fiókjával való használat érdekében a gyakran használt Azure-eszközök már előre telepítve és konfigurálva vannak rajta.
A Cloud Shell megnyitásához válassza a Kipróbálás lehetőséget egy kódblokk jobb felső sarkában. A Cloud Shellt egy külön böngészőlapon is elindíthatja a https://shell.azure.com cím megnyitásával.
Amikor megnyílik a Cloud Shell, ellenőrizze, hogy a Bash ki van-e jelölve a környezetében. A következő munkamenetek az Azure CLI-t használják Bash-környezetben, a Másolás lehetőséget választva másolja ki a kódblokkokat, illessze be a Cloud Shellbe, és nyomja le az Enter billentyűt a futtatáshoz.
Bejelentkezés az Azure-ba
A Cloud Shell automatikusan hitelesítve lesz a kezdeti fiókkal, amellyel bejelentkezett. A következő szkripttel egy másik előfizetéssel jelentkezhet be, lecserélve <Subscription ID>
az Azure-előfizetés azonosítóját. Ha nem rendelkezik Azure-előfizetéssel, első lépésként hozzon létre egy ingyenes Azure-fiókot.
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
További információ: Aktív előfizetés beállítása vagy interaktív bejelentkezés
Paraméterértékek beállítása
Az adatbázis és a szükséges erőforrások létrehozásához a következő értékek használhatók a következő parancsokban. A kiszolgálóneveknek globálisan egyedinek kell lenniük az Összes Azure-ban, így a kiszolgálónév létrehozásához a $RANDOM függvényt kell használni.
Módosítsa a környezetnek megfelelő helyet. Cserélje le 0.0.0.0
az IP-címtartományt az adott környezetnek megfelelőre. A használt számítógép nyilvános IP-címének használatával csak az Ön IP-címére korlátozhatja a kiszolgálóhoz való hozzáférést.
# Variable block
let "randomIdentifier=$RANDOM*$RANDOM"
location="East US"
resourceGroup="msdocs-postgresql-rg-$randomIdentifier"
tag="create-postgresql-server-and-firewall-rule"
server="msdocs-postgresql-server-$randomIdentifier"
sku="GP_Gen5_2"
login="azureuser"
password="Pa$$w0rD-$randomIdentifier"
# Specify appropriate IP address values for your environment
# to limit / allow access to the PostgreSQL server
startIp=0.0.0.0
endIp=0.0.0.0
echo "Using resource group $resourceGroup with login: $login, password: $password..."
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. A következő példában létrehozunk egy myResourceGroup nevű erőforráscsoportot az eastus helyen:
# Create a resource group
echo "Creating $resourceGroup in $location..."
az group create --name $resourceGroup --location "$location" --tags $tag
A kiszolgáló létrehozása
Hozzon létre egy kiszolgálót az az postgres server create paranccsal.
# Create a PostgreSQL server in the resource group
# Name of a server maps to DNS name and is thus required to be globally unique in Azure.
echo "Creating $server in $location..."
az postgres server create --name $server --resource-group $resourceGroup --location "$location" --admin-user $login --admin-password $password --sku-name $sku
Feljegyzés
- A kiszolgálónév csak kisbetűket, számokat és a kötőjel (-) karaktert tartalmazhatja. 3–63 karakter hosszúságúnak kell lennie. További információ: Azure Database for PostgreSQL elnevezési szabályok.
- A rendszergazda felhasználójának felhasználóneve nem lehet azure_superuser, rendszergazda, rendszergazda, gyökér, vendég vagy nyilvános.
- A jelszónak 8–128 karaktert kell tartalmaznia a következő kategóriák közül háromból: angol nagybetűk, angol kisbetűk, számok és nem alfanumerikus karakterek.
- Az SKU-kkal kapcsolatos információkért tekintse meg az Azure Database for PostgreSQL díjszabását.
Fontos
- A kiszolgálón az alapértelmezett PostgreSQL-verzió a 9.6. Az összes támogatott verzió megtekintéséhez tekintse meg a Támogatott PostgreSQL főverzióit.
- Az SSL alapértelmezés szerint engedélyezve van a kiszolgálón. Az SSL-kapcsolatról további információt az SSL-kapcsolat konfigurálása című témakörben talál.
Kiszolgálóalapú tűzfalszabály konfigurálása
Hozzon létre egy tűzfalszabályt az az postgres server firewall-rule create paranccsal, amely hozzáférést biztosít a helyi környezetnek a kiszolgálóhoz való csatlakozáshoz.
# Configure a firewall rule for the server
echo "Configuring a firewall rule for $server for the IP address range of $startIp to $endIp"
az postgres server firewall-rule create --resource-group $resourceGroup --server $server --name AllowIps --start-ip-address $startIp --end-ip-address $endIp
Tipp.
Ha nem tudja az IP-címét, lépjen a WhatIsMyIPAddress.com a beszerzéséhez.
Feljegyzés
A csatlakozási problémák elkerülése érdekében győződjön meg arról, hogy a hálózat tűzfala engedélyezi az 5432-s portot. Az Azure Database for PostgreSQL-kiszolgálók ezt a portot használják.
Kiszolgálóalapú tűzfalszabályok listázása
A meglévő kiszolgálói tűzfalszabályok listázásához futtassa az az postgres kiszolgálói tűzfalszabály-lista parancsot.
# List firewall rules for the server
echo "List of server-based firewall rules for $server"
az postgres server firewall-rule list --resource-group $resourceGroup --server-name $server
# You may use the switch `--output table` for a more readable table format as the output.
A kimenet alapértelmezés szerint JSON formátumban listázza a tűzfalszabályokat, ha vannak ilyenek. A kapcsolóval --output table
olvashatóbb táblázatformátumot használhat kimenetként.
Kapcsolatadatok lekérése
A kiszolgálóhoz való csatlakozáshoz adja meg a gazdagép adatait és a hozzáférési hitelesítő adatokat.
az postgres server show --resource-group $resourceGroup --name $server
Jegyezze fel a administratorLogin és a teljesQualifiedDomainName értékeket.
Csatlakozás az Azure Database for PostgreSQL-kiszolgálóra a psql használatával
A psql-ügyfél népszerű választás a PostgreSQL-kiszolgálókhoz való csatlakozáshoz. Az Azure Cloud Shell használatával psql
csatlakozhat a kiszolgálóhoz. A helyi környezetben is használhatja psql
, ha elérhető. A postgres nevű üres adatbázis automatikusan létrejön egy új PostgreSQL-kiszolgálóval. Ezzel az adatbázissal psql
csatlakozhat az alábbi kódban látható módon.
psql --host=<server_name>.postgres.database.azure.com --port=5432 --username=<admin_user>@<server_name> --dbname=postgres
Tipp.
Ha url-címet szeretne használni a Postgreshez való csatlakozáshoz, az URL-cím a @ bejelentkezési felhasználónevet kódolja a következővel %40
: . A psql kapcsolati sztring például a következő:
psql postgresql://<admin_user>%40<server_name>@<server_name>.postgres.database.azure.com:5432/postgres
Hozzon létre egy üres adatbázist
Miután csatlakozott a kiszolgálóhoz, hozzon létre egy üres adatbázist, amikor a rendszer erre kéri:
CREATE DATABASE mypgsqldb;
Amikor a rendszer kéri, hajtsa végre a következő parancsot, hogy az újonnan létrehozott mypgsqldb adatbázishoz kapcsolódhasson:
\c mypgsqldb
Táblák létrehozása az adatbázisban
Most, hogy tudja, hogyan csatlakozhat az Azure Database for PostgreSQL szolgáltatáshoz, elvégezhet néhány alapvető feladatot:
Először hozzunk létre egy táblát, és töltsük fel adatokkal. Például hozzunk létre egy táblát a leltáradatok nyomon követéséhez:
CREATE TABLE inventory (
id serial PRIMARY KEY,
name VARCHAR(50),
quantity INTEGER
);
Az újonnan létrehozott tábla a táblák listájában való megtekintéséhez írja be a következőt:
\dt
Adatok betöltése a táblába
Most, hogy létrehoztuk a táblát, szúrjunk be néhány adatot. A megnyitott parancssori ablakban futtassa a következő lekérdezést néhány adatsor beszúrásához:
INSERT INTO inventory (id, name, quantity) VALUES (1, 'banana', 150);
INSERT INTO inventory (id, name, quantity) VALUES (2, 'orange', 154);
Így két sornyi mintaadat került a korábban létrehozott táblába.
A táblákban lévő adatok lekérdezése és frissítése
Hajtsa végre a következő lekérdezést a készlettáblában lévő információk lekéréséhez:
SELECT * FROM inventory;
A készlettáblában található adatokat frissíteni is lehet:
UPDATE inventory SET quantity = 200 WHERE name = 'banana';
A frissített értékeket az adatok lekérésekor tekintheti meg:
SELECT * FROM inventory;
Adatbázis visszaállítása egy korábbi időpontra
Tegyük fel, hogy véletlenül törölt egy táblát. Ez nem olyasvalami, ami könnyen helyreállítható. Az Azure Database for PostgreSQL segítségével bármely olyan időpontra vissza lehet térni, amelyen a kiszolgálóról biztonsági mentés készült (ez a biztonsági mentések megőrzési idejéhez megadott beállításoktól függ), és az adott időpontra jellemző állapotot vissza lehet állítani egy új kiszolgálóra. Az új kiszolgáló segítségével helyreállíthatja a törölt adatokat.
Az alábbi parancs a mintakiszolgálót egy, a tábla hozzáadása előtti időpontra állítja vissza:
az postgres server restore --resource-group myresourcegroup --name mydemoserver-restored --restore-point-in-time 2017-04-13T13:59:00Z --source-server mydemoserver
Az az postgres server restore
parancshoz a következő paraméterekre van szükség:
Beállítás | Ajánlott érték | Leírás |
---|---|---|
resource-group | myresourcegroup | Az erőforráscsoport, amelyben a forráskiszolgáló található. |
név | mydemoserver-restored | A visszaállítási paranccsal létrehozott új kiszolgáló neve. |
restore-point-in-time | 2017-04-13T13:59:00Z | Válassza ki az időpontot, amelynek az állapotát vissza szeretné állítani. Ennek a dátumnak és időnek a forráskiszolgáló biztonsági mentésének megőrzési időszakán belül kell lennie. ISO8601 dátum- és időformátumot használjon. Használhatja például a saját helyi időzónáját (például 2017-04-13T05:59:00-08:00 ), de UTC Zulu formátumot is használhat (2017-04-13T13:59:00Z ). |
source-server | mydemoserver | A forráskiszolgáló neve vagy azonosítója, amelyről a visszaállítást végzi. |
Ha egy adott időpontra állít vissza egy kiszolgálót, azzal létrehoz egy újat, amely az eredeti kiszolgáló adott időpontra jellemző állapotának másolata. A visszaállított kiszolgáló hely- és tarifacsomag-értékei ugyanazok, mint a forráskiszolgálón.
Egy szinkron parancsról van szó, amelyet a rendszer a kiszolgáló visszaállítása után visszaad. Ha a visszaállítás kész, keresse meg a létrehozott új kiszolgálót. Ellenőrizze, hogy az adatok a várt módon álltak-e vissza.
Az erőforrások eltávolítása
Az alábbi paranccsal eltávolíthatja az erőforráscsoportot és a hozzá társított összes erőforrást az az csoporttörlés paranccsal – kivéve, ha folyamatosan szüksége van ezekre az erőforrásokra. Ezen erőforrások némelyikének létrehozása és törlése eltarthat egy ideig.
az group delete --name $resourceGroup
Következő lépések
Ez az oktatóanyag bemutatta, hogyan végezheti el az alábbi műveleteket az Azure CLI (parancssori felület) és más segédprogramok használatával:
- Azure-adatbázis létrehozása PostgreSQL-kiszolgálóhoz
- A kiszolgáló tűzfalának konfigurálása
- Adatbázis létrehozása a psql segédprogrammal
- Mintaadatok betöltése
- Adatok lekérdezése
- Adatok frissítése
- Adatok visszaállítása