Vytvoření instance flexibilního serveru Azure Database for PostgreSQL pomocí sady .NET SDK

V tomto rychlém startu se dozvíte, jak pomocí knihoven Azure SDK v .NET vytvářet, aktualizovat a odstraňovat instanci flexibilního serveru Azure PostgreSQL. Azure Database for PostgreSQL je spravovaná služba, která umožňuje spouštět, spravovat a škálovat vysoce dostupné databáze PostgreSQL v cloudu. Pomocí sady .NET SDK můžete zřídit instanci flexibilního serveru Azure Database for PostgreSQL, více serverů nebo více databází na serveru.

Prerequisites

Knihovna Azure.ResourceManager.PostgreSql

Knihovna Azure.ResourceManager.PostgreSql je součástí sady Azure SDK pro .NET a poskytuje funkce pro správu instancí flexibilního serveru PostgreSQL v Azure. S touto knihovnou můžete provádět různé operace související s instancemi flexibilního serveru PostgreSQL, včetně mimo jiné:

  1. Vytváření instancí flexibilního serveru Azure PostgreSQL:
    Můžete vytvořit nové flexibilní instance serveru se zadanými konfiguracemi, jako je umístění, skladová položka, úložiště a verze.

  2. Aktualizace instancí flexibilních serverů Azure PostgreSQL:
    Existující instance flexibilního serveru PostgreSQL můžete aktualizovat, včetně změn konfigurací, jako je přihlášení správce, heslo, skladová položka, úložiště a verze.

  3. Odstranění instancí flexibilního serveru Azure PostgreSQL:
    Existující instance flexibilního serveru Azure PostgreSQL můžete odstranit.

  4. Načítání informací o Azure PostgreSQL:
    Můžete načíst podrobnosti o existujících instancích flexibilního serveru PostgreSQL, včetně jejich konfigurací, stavu a dalších metadat.

  5. Správa databází:
    V instanci flexibilního serveru Azure PostgreSQL můžete vytvářet, aktualizovat, odstraňovat a načítat databáze.

  6. Správa pravidel brány firewall:
    Můžete vytvářet, aktualizovat, odstraňovat a získávat pravidla firewallu u instance za účelem řízení přístupu.

  7. Správa nastavení konfigurace:
    Můžete spravovat nastavení konfigurace pro instanci flexibilního serveru Azure PostgreSQL, včetně načítání a aktualizace parametrů.

Přihlášení k Azure

Před použitím sady Azure SDK pro .NET k vytvoření, aktualizaci nebo odstranění instance flexibilního serveru Azure Database for PostgreSQL se musíte přihlásit ke svému účtu Azure pomocí Azure CLI.

Spuštění příkazu login

Přihlaste se ke svému účtu pomocí az CLI

az login

Instalace požadovaných balíčků

Pomocí následujících příkazů nainstalujte potřebné balíčky:

dotnet add package Azure.Identity
dotnet add package Azure.ResourceManager
dotnet add package Azure.ResourceManager.PostgreSql

Po instalaci těchto balíčků se ujistěte, že je každá položka uvedena v souboru .csproj před spuštěním příkazů pro sestavení a spuštění.

Další informace o .csproj souboru najdete v tématu Nasazení webu.

Note

Pokud máte problémy související s počátečním nastavením pro .NET, postupujte podle tohoto průvodce.

Vytvoření projektu

Pomocí kroků uvedených v tomto odkazu vytvořte nový projekt .NET.

Vytvoření serveru

Pokud chcete vytvořit instanci flexibilního serveru PostgreSQL, vytvořte soubor s názvem CreateServer.cs s následujícím kódem.

using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.PostgreSql.FlexibleServers;
using Azure.ResourceManager.PostgreSql.FlexibleServers.Models;

namespace CreatePostgreSqlFlexibleServer
{
    class Program
 {
        static async Task Main(string[] args)
   {

            TokenCredential credential = new DefaultAzureCredential();
            ArmClient armClient = new ArmClient(credential);
            // Replace with your subscription ID
            string subscriptionId = "subscription-id";
            // Replace with your resource group name
            string resourceGroupName = "resource-group-name";
           // Replace with a unique server name
            string serverName = "server-name";
           // Replace with your desired region
            string location = "region-name";
          // Create the resource identifier for the resource group
            ResourceIdentifier resourceGroupId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
            ResourceGroupResource resourceGroup = await armClient.GetResourceGroupResource(resourceGroupId).GetAsync();
            // Prepare server data
            var serverData = new PostgreSqlFlexibleServerData(location)
            {
              AdministratorLogin = "admin-username",
              AdministratorLoginPassword = "<admin-password>",
              Version = "pgVersion",
              Storage = new PostgreSqlFlexibleServerStorage() { StorageSizeInGB = 128 },
              Sku = new PostgreSqlFlexibleServerSku("Standard_B1ms", PostgreSqlFlexibleServerSkuTier.Burstable),
           };
            try
            {
               ArmOperation<PostgreSqlFlexibleServerResource> operation = await resourceGroup.GetPostgreSqlFlexibleServers().CreateOrUpdateAsync(Azure.WaitUntil.Completed, serverName, serverData);
              PostgreSqlFlexibleServerResource serverResource = operation.Value;
              Console.WriteLine($"PostgreSQL flexible server '{serverResource.Data.Name}' created successfully.");
           }
            catch (Exception ex)
            {
               Console.WriteLine($"An error occurred: {ex.Message}");
            }
   }
  }
}

Tento příklad ukazuje vytvoření instance flexibilního serveru PostgreSQL pomocí Azure Resource Manageru. Knihovna PostgreSql. Podobně můžete použít i jiné metody poskytované knihovnou ke správě instancí flexibilního serveru PostgreSQL a souvisejících prostředků.

Nahraďte následující parametry v kódu vašimi daty:

  • subscription-id: ID vašeho předplatného Azure.
  • resource-group-name: Název vaší skupiny prostředků.
  • server-name: Jedinečný název serveru PostgreSQL.
  • location: Oblast Azure pro váš server.
  • admin-username: Uživatelské jméno správce.
  • admin-password: Heslo správce.
  • pgVersion: Verze PostgreSQL (například 11, 12, 13, 14, 15 nebo 16).

Autentizace

Třída DefaultAzureCredential se pokouší ověřit pomocí metod, jako jsou proměnné prostředí, spravované identity nebo Azure CLI. Ujistěte se, že máte nakonfigurovanou jednu z těchto metod.

Spuštění souboru

Pokud chcete soubor spustit, musíte sestavit a spustit soubor .cs pomocí rozhraní příkazového řádku .NET. Tím se zahájí proces vytvoření, aktualizace nebo odstranění instance PostgreSQL podle kódu.

Pokaždé, když v souboru .cs provedete jakoukoli změnu, nezapomeňte soubor sestavit a spustit.

Spuštění souboru .cs pomocí následujících příkazů

dotnet build
dotnet run

Note

Spuštěním tohoto kódu zahájíte proces vytváření instance, což může trvat několik minut.

Kontrola nasazených prostředků

Nasazenou instanci flexibilního serveru můžete zkontrolovat prostřednictvím webu Azure Portal, Azure CLI, Azure PowerShellu a různých dalších nástrojů k ověření nasazení a kontrole nasazených prostředků.

Aktualizace dat serveru

Vytvořte soubor UpdateServerData.cs.

Data serveru můžete také aktualizovat pomocí sady Azure PostgreSQL .NET SDK.

Pomocí této metody můžete například aktualizovat verzi, uživatelské jméno správce, heslo atd. CreateOrUpdateAsync .

Metoda CreateOrUpdateAsync buď vytvoří novou instanci, pokud neexistuje žádná instance se stejným názvem, nebo aktualizuje existující instanci s novými daty serveru, pokud existuje.

using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.PostgreSql.FlexibleServers;
using Azure.ResourceManager.PostgreSql.FlexibleServers.Models;

namespace UpdateServerData
{
    class Program
 {
        static async Task Main(string[] args)
   {

            TokenCredential credential = new DefaultAzureCredential();
            ArmClient armClient = new ArmClient(credential);
            // Replace with your subscription ID
            string subscriptionId = "subscription-id";
            // Replace with your resource group name
            string resourceGroupName = "resource-group-name";
            // Replace with a unique server name
            string serverName = "server-name";
            // Replace with your desired region
            string location = "region-name";
            ResourceIdentifier resourceGroupId = ResourceGroupResource.CreateResourceIdentifier(subscriptionId, resourceGroupName);
            ResourceGroupResource resourceGroup = await armClient.GetResourceGroupResource(resourceGroupId).GetAsync();
            // Prepare server data
            var serverData = new PostgreSqlFlexibleServerData(location)
           {
              // Updating version from a lower version to a higher version
              Version = "16",
           };
            try
             {
               ArmOperation<PostgreSqlFlexibleServerResource> operation = await resourceGroup.GetPostgreSqlFlexibleServers().CreateOrUpdateAsync(Azure.WaitUntil.Completed, serverName, serverData);
               PostgreSqlFlexibleServerResource serverResource = operation.Value;
               Console.WriteLine($"PostgreSQL flexible server '{serverResource.Data.Name}' updated successfully.");
            }
            catch (Exception ex)
            {
              Console.WriteLine($"An error occurred: {ex.Message}");
            }
   }
  }
}

Spusťte soubor a zkontrolujte změny provedené v prostředku pomocí souboru UpdateServerData.cs.

Vyčistěte zdroje

Vytvořené instance flexibilního serveru můžete vyčistit odstraněním instance flexibilního serveru pomocí sady Azure SDK pro .NET.

Vytvořte DeleteServer.cs soubor a přidejte následující kód.

using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager;
using Azure.ResourceManager.Resources;
using Azure.ResourceManager.PostgreSql.FlexibleServers;
using Azure.ResourceManager.PostgreSql.FlexibleServers.Models;

namespace DeleteServer
{
    class Program
  {
        static async Task Main(string[] args)
   {

            // Replace with your subscription ID
            string subscriptionId = "subscription-id";
            // Replace with your resource group name
            string resourceGroupName = "resource-group-name";
            // Replace with a unique server name
            string serverName = "server-name";
            var credential = new DefaultAzureCredential();
            var armClient = new ArmClient(credential);
            try
            {
                // Get the PostgreSQL flexible server resource
                var postgresServerResourceId = PostgreSqlFlexibleServerResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, serverName);
                var postgresServer = armClient.GetPostgreSqlFlexibleServerResource(postgresServerResourceId);
                // Delete the server
                await postgresServer.DeleteAsync(Azure.WaitUntil.Completed);
                Console.WriteLine($"PostgreSQL flexible server '{serverName}' deleted successfully.");
            }
            catch (Exception ex)
            {
                Console.WriteLine($"An error occurred: {ex.Message}");
            }
   }
  }
}

Nahraďte následující parametry vašimi daty:

  • subscription-id: Vlastní ID předplatného.
  • resource-group-name: Název skupiny prostředků, kterou chcete použít. Skript vytvoří novou skupinu prostředků, pokud tato ještě neexistuje.
  • server-name: Název instance flexibilního serveru Azure Database, kterou jste vytvořili.

Skupinu prostředků vytvořenou pomocí portálu, rozhraní příkazového řádku nebo PowerShellu můžete také odstranit. Pokud ho chcete odstranit pomocí rozhraní příkazového řádku nebo PowerShellu, postupujte podle kroků uvedených v části Rozhraní příkazového řádku a PowerShellu.

Zástupné symboly nahraďte podrobnostmi a spusťte soubor.

Případně můžete skupinu prostředků odebrat pomocí:

  • Azure CLI:az group delete --name <resource_group>
  • PowerShell:Remove-AzResourceGroup -Name <resource_group>
  • Azure Portal: Přejděte do skupiny prostředků a odstraňte ji.