Megosztás a következőn keresztül:


Azure PostgreSQL-Flexible-kiszolgáló fájlként való visszaállítása az Azure Portal használatával

Ez a cikk ismerteti, hogyan állíthatja vissza az Azure PostgreSQL-Flexible-kiszolgálót a fájlokként mentett biztonsági másolatából az Azure Portal használatával.

Előfeltételek

Mielőtt visszaállítja a rugalmas Azure Database for PostgreSQL-kiszolgáló biztonsági mentéseit, tekintse át az alábbi előfeltételeket:

  • Győződjön meg arról, hogy rendelkezik a visszaállítási művelethez szükséges engedélyekkel.

  • A biztonsági mentési adatok a Microsoft-bérlőn belül a Biztonsági mentési tárhelyen, blobként kerülnek tárolásra. A visszaállítási művelet során a biztonsági mentési adatok át lesznek másolva az egyik tárfiókból a másikba a bérlők között. Győződjön meg arról, hogy a visszaállítás céltárfiókjában az AllowCrossTenantReplication tulajdonság értéke legyen igaz.

  • Győződjön meg arról, hogy a biztonsági mentés visszaállításához használt céltárfiók nyilvános hálózaton keresztül érhető el. Ha a tárfiók privát végpontot használ, a visszaállítási művelet végrehajtása előtt frissítse a nyilvános hálózati hozzáférési beállításait .

Azure PostgreSQL visszaállítása – Rugalmas kiszolgálói biztonsági másolatok fájlokként

Megjegyzés:

A visszaállítási művelet két lépésből áll:

  1. Állítsa vissza a biztonsági mentést a Backup-tárolóból egy tárolóba.
  2. Állítsa vissza a biztonsági mentési fájlokat a tárolóból egy új vagy meglévő rugalmas kiszolgálóra.

Az Azure PostgreSQL-Flexible-adatbázis visszaállításához kövesse az alábbi lépéseket:

  1. Menjen a Biztonsági Mentés Tárolója>Biztonsági Mentési Példányokhoz. Válassza ki a helyreállítani kívánt Rugalmas PostgreSQL-kiszolgálót, és válassza a Visszaállítás lehetőséget.

    Másik lehetőségként lépjen a Biztonsági mentési központba, és válassza a Visszaállítás lehetőséget.

  2. Válassza ki a visszaállítani kívánt időpontot a Visszaállítási pont kiválasztása funkcióval. Módosítsa a dátumtartományt az időszak kiválasztásával.

  3. Válassza ki a cél tárfiókot és tárolót a Visszaállítási paraméterek lapon. A visszaállítási paraméterek engedélyeinek ellenőrzéséhez válassza az Ellenőrzés lehetőséget a végső felülvizsgálat és visszaállítás előtt.

  4. Ha az ellenőrzés sikeres volt, válassza a Véleményezés + visszaállítás lehetőséget.

  5. A paraméterek végleges áttekintése után válassza a Visszaállítás lehetőséget a kiválasztott PostgreSQL – Rugalmas kiszolgáló biztonsági mentésének visszaállításához a céltárfiókban.

  6. Küldje el a visszaállítási műveletet, és kövesse nyomon az aktivált feladatot a Biztonsági mentési feladatok területen.

A visszaállítási feladat sikeres befejezése után lépjen a tárfiók tárolójába, és tekintse meg a visszaállított adatbázisokat fájlként (.sql fájlként) a PostgreSQL rugalmas kiszolgálóról. Az Azure Backup a következő biztonsági mentési fájlokat is létrehozza:

  • Database.sql file adatbázisonként: Egy adott adatbázis adatait és sémaadatait tartalmazza.

  • Roles.sql files teljes példány esetén: A kiszolgáló szintjén létező összes szerepkör-információt tartalmazza.

  • Tablespace.sql file: Tablespace fájl.

  • Schema.sql file: A kiszolgálón található összes adatbázis sémaadatait tartalmazza.

    Megjegyzés:

    Javasoljuk, hogy ne futtassa ezt a szkriptet a Rugalmas PostgreSQL-kiszolgálón, mert a séma már része a database.sql szkriptnek.

A biztonsági mentési fájlok visszaállítása tárolóból új vagy meglévő PostgreSQL-kiszolgálóra – rugalmas kiszolgáló

Ha a biztonsági mentési fájlokat egy új vagy meglévő PostgreSQL- rugalmas kiszolgálóra szeretné visszaállítani a tárolóból, kövesse az alábbi lépéseket:

  1. Győződjön meg arról, hogy az összes szükséges bővítmény engedélyezve van az új cél rugalmas kiszolgálón.

  2. A forrás PostgreSQL-adatbázis kiszolgálóparaméter-értékeinek egyeztetése az Azure Database for PostgreSQL-hez az Azure Portal Kiszolgálóparaméterek szakaszának elérésével és az értékek manuális frissítésével. Mentse a paraméter módosításait, majd indítsa újra a rugalmas Azure Database for PostgreSQL-kiszolgálót az új konfiguráció alkalmazásához.

  3. Ha az új kiszolgálón Microsoft Entra-hitelesítésre van szükség, engedélyezze azt, és hozza létre a megfelelő Microsoft Entra-rendszergazdákat.

  4. Hozzon létre egy új adatbázist a helyreállításhoz.

    Megjegyzés:

    Az adatbázis visszaállítása előtt létre kell hoznia egy új, üres adatbázist. Győződjön meg arról, hogy a felhasználói fiók rendelkezik az CREATEDB engedéllyel.

    Az adatbázis létrehozásához használja a CREATE DATABASE Database_name parancsot.

  5. Állítsa vissza az adatbázist a database.sql file cél rendszergazdai felhasználó használatával.

  6. A céladatbázis létrehozása után töltse le a memóriaképfájlt egy Azure Storage-fiókból az alábbi parancs futtatásával:

    az storage blob download --container-name <container-name> --name <blob-name> --account-name <storage-account-name> --account-key <storage-account-key> --file <file-name>
    
  7. Ezután állítsa vissza az adatbázisban lévő adatokat a mentési fájlból az alábbi parancs futtatásával:

    pg_restore -h <postgres-server-url> -p <port> -U <username> -d <database-name> --no-owner -v <File Name>
    
    • --account-name: A céltárfiók neve.
    • --container-name: A blobtároló neve.
    • --blob-name: A blob neve.
    • --account-key: Tárfiók kulcs.
    • -Fd: A könyvtár formátuma.
    • -j: A munkák száma.
    • -C: Indítsa el a kimenetet egy paranccsal, amely létrehozza magát az adatbázist, majd újracsatlakozik hozzá.

    Megjegyzés:

    Ha a parancs nem a várt módon fut, adja meg a teljes fájl elérési útját ahelyett, hogy csak a fájlnevet használták volna.

    Másik lehetőségként letöltheti a biztonsági mentési fájlt, és közvetlenül futtathatja a visszaállítást.

  8. Csak a szükséges szerepköröket és jogosultságokat állítsa vissza, és hagyja figyelmen kívül a gyakori hibákat. Hagyja ki ezt a lépést, ha helyi rendszergazdaként elvégzi a megfelelőségi követelmények és az adatlekérés helyreállítását.

A visszaállított adatbázisok szerepköreinek és felhasználóinak visszaállítása

Az archivált biztonsági másolatokat elsősorban megfelelőségi igények, például tesztelés és auditok céljából állítják vissza. Bejelentkezhet helyi rendszergazdaként, és visszaállíthatja a database.sql fájlt; az adatlekéréshez nincs szükség más szerepkörökre.

Más felhasználási módok, például a véletlen törlés elleni védelem vagy a vészhelyreállítás esetén győződjön meg arról, hogy a szükséges szerepkörök a szervezet igényeinek megfelelően jönnek létre. Kerülje el a duplikációkat roles.sql és database.sql között.

  • Állítsa vissza ugyanazt a rugalmas kiszolgálót: Előfordulhat, hogy nem szükséges a szerepkör visszaállítása.
  • Visszaállítás másik rugalmas kiszolgálóra: Használja a roles.sql fájlt a szükséges szerepkörök újbóli létrehozásához.

Visszaállításkor a roles.sql használata esetén előfordulhat, hogy egyes szerepkörök vagy attribútumok nem érvényesek az új célszerverre.

A superuser hozzáféréssel rendelkező környezetek (helyszíni vagy virtuális gépek) esetén az összes parancs zökkenőmentesen futtatható.

A rugalmas kiszolgálói forgatókönyv legfontosabb szempontjai

A legfontosabb szempontok a következők:

  • Superuser-Only attribútumok eltávolítása: Rugalmas kiszolgálón nincsenek superuser jogosultságok. Ezért távolítsa el az attribútumokat, például az NOSUPERUSER-t és az NOBYPASSRLS-et a szerepkör-memóriaképből.
  • Service-Specific felhasználók kizárása: A rugalmas kiszolgálószolgáltatásokra ( azure_su, , azure_pg_admin, replication, localadmin) Entra Adminvonatkozó felhasználók kizárása. Ezek az adott szolgáltatásszerepkörök automatikusan újra létrejönnek, amikor a rendszer hozzáadja a rendszergazdákat az új rugalmas kiszolgálóhoz.

Az adatbázis-objektumok visszaállítása előtt győződjön meg arról, hogy megfelelően menti és törli a szerepköröket. A művelet végrehajtásához töltse le a szkriptet a roles.sqltárolóból, és hozza létre az összes szükséges bejelentkezést.

  • Nem Entra-szerepkörök létrehozása: A szerepkör-létrehozási szkriptek futtatásához használjon helyi rendszergazdai fiókot.
  • Microsoft Entra-szerepkörök létrehozása: Ha szerepköröket kell létrehoznia a Microsoft Entra-felhasználók számára, a szükséges szkriptek futtatásához használja a Microsoft Entra rendszergazdai fiókját.

A szerepkör-szkriptet a tárfiókból töltheti le az alábbi képernyőképen látható módon:

A kimeneti fájl migrálásakor előfordulhat, roles.sql hogy bizonyos szerepkörök és attribútumok nem alkalmazhatók az új környezetben. A következőket kell figyelembe vennie:

  • Olyan attribútumok eltávolítása, amelyeket csak a felügyelők állíthatnak be: Ha olyan környezetbe migrál, ahol nem rendelkezik superuser jogosultságokkal, távolítsa el az olyan attribútumokat, mint a NOSUPERUSER és a NOBYPASSRLS a szerepkör-memóriaképből.
  • Szolgáltatásspecifikus felhasználók kizárása: Egykiszolgálós szolgáltatásfelhasználók kizárása, például azure_superuser vagy azure_pg_admin. Ezek a szolgáltatásra vonatkoznak, és automatikusan jönnek létre az új környezetben.

A szerepkör-memóriakép törléséhez használja az alábbi sed parancsot:

sed -i '/azure_superuser/d; /azure_pg_admin/d; /azuresu/d; /^CREATE ROLE replication/d; /^ALTER ROLE replication/d; /^ALTER ROLE/ {s/NOSUPERUSER//; s/NOBYPASSRLS//;}' roles.sql

Ez a parancs törli azokat a sorokat, amelyek tartalmazzák a azure_superuser, azure_pg_admin, azuresu elemeket, azokat, amelyek CREATE ROLE replikációval és ALTER ROLE replikációval kezdődnek, továbbá eltávolítja a NOSUPERUSER és NOBYPASSRLS attribútumokat az ALTER ROLE utasításokból.

Következő lépések

Az Azure PostgreSQL – Rugalmas kiszolgáló biztonsági mentésének kezelése az Azure Portal használatával.