Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Azure Database for PostgreSQL adalah layanan terkelola yang dapat Anda gunakan untuk menjalankan, mengelola, dan menskalakan database PostgreSQL yang sangat tersedia di cloud.
Panduan cepat ini menunjukkan kepada Anda cara membuat instans server fleksibel Azure Database for PostgreSQL dengan menggunakan Azure portal, Azure CLI, atau template Azure Resource Manager (ARM).
Prasyarat
Sebelum mulai, pastikan bahwa Anda memiliki:
- Sebuah langganan Azure. Jika Anda tidak memilikinya, buat akun Azure gratis.
- Izin yang sesuai untuk membuat sumber daya di langganan Anda.
Memahami apa yang Anda buat
Instans server fleksibel Azure Database for PostgreSQL meliputi:
- Sekumpulan sumber daya komputasi dan penyimpanan yang dikonfigurasi.
- Penyebaran dalam grup sumber daya Azure.
- Database
postgresyang dibuat secara default. - Database
azure_maintenanceuntuk manajemen layanan. - Database
azure_sysuntuk fitur penyimpanan kueri dan penyetelan indeks.
Nota
Koneksi biasanya menggunakan port 5432, atau port 6432 jika menyambungkan melalui pengumpul koneksi PgBouncer bawaan.
Membuat server menggunakan portal Microsoft Azure
Arahkan ke panduan pembuatan
- Masuk ke portal Azure.
- Pilih Buat sumber daya di sudut kiri atas.
- Di bawah Kategori, pilih Database.
- Temukan dan pilih Server fleksibel Azure Database for PostgreSQL.
- Pilih Buat.
Mengonfigurasi pengaturan dasar
Detail proyek
| Setting | Nilai yang disarankan | Catatan |
|---|---|---|
| Subscription | Langganan Anda | Pilih tempat untuk menagih sumber daya |
| grup Sumber Daya | myresourcegroup | Buat baru atau pilih yang sudah ada |
Detail Server
| Setting | Nilai yang disarankan | Description |
|---|---|---|
| Nama Server | mydemoserver-pgsql | Harus unik secara global. Domain .postgres.database.azure.com ditambahkan secara otomatis |
| Wilayah | Wilayah yang paling dekat dengan Anda | Pertimbangkan kepatuhan, residensi data, harga, dan kedekatan dengan pengguna |
| Versi PostgreSQL | Versi terbaru tersedia | Saat ini didukung: 18, 17, 16, 15, 14, 13, 12, 11 |
| Jenis beban kerja | Pengembangan | Pengembangan menggunakan SKU Burstable. Produksi menggunakan Tujuan Umum atau Memori yang Dioptimalkan. |
| Zona ketersediaan | Tidak ada preferensi | Berguna untuk ditempatkan bersamaan dengan aplikasi Anda |
Ketersediaan tinggi
| Option | SLA | Description |
|---|---|---|
| Disabled | 99,9% | Server tunggal tanpa siaga |
| Zona yang sama | 99,95% | Siaga di zona ketersediaan yang sama |
| Zona berlebihan | 99,99% | Siaga di zona ketersediaan yang berbeda |
Authentication
| Setting | Description | Recommended |
|---|---|---|
| Metode autentikasi | Cara pengguna mengautentikasi |
-
Autentikasi PostgreSQL saja (untuk mulai cepat) - Autentikasi Microsoft Entra (untuk produksi) - Keduanya (untuk fleksibilitas) |
| Nama pengguna admin | adminuser | - Harus 1-63 karakter - Hanya angka dan huruf - Tidak dapat memulai dengan pg_- Tidak dapat menjadi nama yang dicadangkan sistem |
| Password | Kata sandi kompleks | 8-128 karakter dengan huruf besar, huruf kecil, angka, dan karakter khusus |
Mengonfigurasi komputasi dan penyimpanan
Pilih Konfigurasikan server untuk dikustomisasi:
Tingkat komputasi
| Tier | Skenario penggunaan | Description |
|---|---|---|
| Mudah meledak | Pengembangan | Untuk beban kerja yang tidak memerlukan CPU penuh berkelanjutan |
| Tujuan Umum | Produksi | Beban kerja produksi yang paling umum |
| Memori dioptimalkan | Beban kerja memori tinggi | Beban kerja yang membutuhkan rasio memori-ke-CPU yang tinggi |
Pengaturan penyimpanan
| Setting | Dapat berubah nanti | Description |
|---|---|---|
| Jenis penyimpanan | ❌ Tidak | Premium SSD atau Premium SSD v2 |
| Ukuran penyimpanan | ✅ Ya (hanya bertambah) | Tidak dapat menyusut setelah pembuatan |
| Lapisan kinerja | ✅ Ya | Mengontrol IOPS dan throughput |
| Penyimpanan otomatis bertambah | ✅ Ya | Memperluas secara otomatis saat mendekati batas |
Pengaturan cadangan
| Setting | Dapat berubah nanti | Description |
|---|---|---|
| Retensi cadangan | ✅ Ya | 7-35 hari |
| Redundansi cadangan | ❌ Tidak | Redundan secara lokal, redundan secara zona, atau Geo-redundan |
| Redundansi geografis | ❌ Tidak | Hanya tersedia di wilayah berpasangan Azure |
Mengonfigurasi jaringan
Pilih metode konektivitas Anda (tidak dapat diubah setelah pembuatan):
Akses publik (alamat IP yang diizinkan)
Gunakan aturan firewall untuk menyambung melalui titik akhir publik.
Pengaturan:
| Setting | Description |
|---|---|
| Perbolehkan akses publik | Mengaktifkan akses publik untuk mengonfigurasi aturan firewall |
| Perbolehkan layanan Azure | Mengizinkan koneksi dari semua layanan Azure |
| Menambahkan IP klien saat ini | Tambahkan alamat IP Anda untuk mengizinkan daftar |
Akses privat (Integrasi jaringan virtual)
Sambungkan melalui titik akhir privat dalam jaringan virtual. Untuk informasi selengkapnya, lihat Jaringan dengan akses privat untuk Azure Database for PostgreSQL.
Mengonfigurasi keamanan
| Setting | Dapat berubah nanti | Opsi |
|---|---|---|
| Kunci enkripsi data | ❌ Tidak | Dikelola layanan atau Dikelola pelanggan |
Tambahkan tag sumber daya (opsional)
Atur sumber daya dengan pasangan nama-nilai:
| Nama | Nilai | Tujuan |
|---|---|---|
| Lingkungan | Pengembangan | Mengidentifikasi jenis lingkungan |
| Pusat Biaya | IT-Dept | Melacak biaya menurut departemen |
| Pemilik | admin@contoso.com | Mengidentifikasi pihak yang bertanggung jawab |
Tinjau dan buat
- Pilih Tinjau + kreasikan.
- Tinjau semua konfigurasi.
- Pilih Buat untuk menyebarkan.
Penyebaran biasanya memakan waktu 5-10 menit. Setelah selesai, pilih Buka sumber daya untuk mengakses server Anda.
Membuat server menggunakan Azure CLI
Prasyarat untuk CLI
Untuk skrip ini, gunakan Azure CLI secara lokal karena memerlukan waktu terlalu lama untuk berjalan di Cloud Shell.
Masuk ke Azure
Gunakan skrip berikut untuk masuk menggunakan langganan tertentu.
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
Untuk informasi selengkapnya, lihat mengatur langganan aktif atau masuk secara interaktif
Jika Anda menggunakan Azure Cloud Shell, Anda sudah masuk.
Membuat server dengan CLI
Buat server dengan satu perintah:
az postgres flexible-server create \
--resource-group myresourcegroup \
--name mydemoserver-pgsql \
--location eastus \
--admin-user myadmin \
--admin-password <password> \
--sku-name Standard_D4ds_v5 \
--tier GeneralPurpose \
--public-access 0.0.0.0 \
--storage-size 128 \
--tags "Environment=Development"
Referensi parameter CLI
| Pengaturan | Description | Example |
|---|---|---|
--resource-group |
Nama grup sumber daya | myresourcegroup |
--name |
Nama server yang unik secara global | mydemoserver-pgsql |
--location |
Azure region | eastus |
--admin-user |
Nama pengguna administrator | myadmin |
--admin-password |
Kata sandi administrator | YourPassword123! |
--sku-name |
SKU Komputasi | Standard_D4ds_v5 |
--tier |
Tingkat komputasi | Berdasarkan Kebutuhan, Serba Guna, Dioptimalkan untuk Memori |
--storage-size |
Penyimpanan dalam GB | 128 |
--public-access |
Alamat IP diperbolehkan | 0.0.0.0 (semua layanan Azure), alamat IP, atau rentang IP |
--version |
Versi PostgreSQL | 16 |
--high-availability |
Mode HA | Dinonaktifkan, SameZone, ZoneRedundant |
--backup-retention |
Hari retensi cadangan | 7-35 |
Contoh CLI tingkat lanjut
Buat server dengan redundansi zona dan ketersediaan tinggi:
az postgres flexible-server create \
--resource-group myresourcegroup \
--name mydemoserver-pgsql-ha \
--location eastus \
--admin-user myadmin \
--admin-password <password> \
--sku-name Standard_D4ds_v5 \
--tier GeneralPurpose \
--storage-size 256 \
--storage-type PremiumV2_LRS \
--high-availability ZoneRedundant \
--zone 1 \
--standby-zone 2 \
--backup-retention 14 \
--public-access 0.0.0.0
Membuat server menggunakan templat ARM
Gambaran umum templat ARM
Templat Azure Resource Manager (ARM) memungkinkan Anda menentukan infrastruktur sebagai kode. Gunakan templat untuk penyebaran yang dapat diulang.
Templat ARM minimal
Simpan file ini sebagai postgres-server-template.json:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"serverName": {
"type": "string",
"metadata": {
"description": "Server name must be globally unique"
}
},
"administratorLogin": {
"type": "string",
"minLength": 1,
"maxLength": 63,
"metadata": {
"description": "Administrator username"
}
},
"administratorLoginPassword": {
"type": "securestring",
"minLength": 8,
"metadata": {
"description": "Administrator password"
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Server location"
}
}
},
"resources": [
{
"type": "Microsoft.DBforPostgreSQL/flexibleServers",
"apiVersion": "2024-08-01",
"name": "[parameters('serverName')]",
"location": "[parameters('location')]",
"sku": {
"name": "Standard_D4ds_v5",
"tier": "GeneralPurpose"
},
"properties": {
"administratorLogin": "[parameters('administratorLogin')]",
"administratorLoginPassword": "[parameters('administratorLoginPassword')]",
"version": "16",
"storage": {
"storageSizeGB": 128,
"type": "Premium_LRS",
"autoGrow": "Enabled"
},
"backup": {
"backupRetentionDays": 7,
"geoRedundantBackup": "Disabled"
},
"network": {
"publicNetworkAccess": "Enabled"
},
"highAvailability": {
"mode": "Disabled"
}
}
}
],
"outputs": {
"serverFQDN": {
"type": "string",
"value": "[reference(parameters('serverName')).fullyQualifiedDomainName]"
}
}
}
Menyebarkan templat ARM
az group create --name myresourcegroup --location eastus
az deployment group create \
--resource-group myresourcegroup \
--template-file postgres-server-template.json \
--parameters \
serverName=mydemoserver-pgsql \
administratorLogin=myadmin \
administratorLoginPassword=<password>
Mendapatkan informasi koneksi
Setelah membuat server Anda, ambil detail koneksi:
Menggunakan portal Microsoft Azure
- Buka server Anda di portal Microsoft Azure.
- Buka halaman Gambaran Umum .
- Salin nilai-nilai ini:
-
Nama server (Titik Akhir):
mydemoserver-pgsql.postgres.database.azure.com -
Login Administrator:
myadmin
-
Nama server (Titik Akhir):
Menggunakan Azure CLI
az postgres flexible-server show \
--resource-group myresourcegroup \
--name mydemoserver-pgsql \
--query "{serverName:fullyQualifiedDomainName, adminUser:administratorLogin}" \
--output table
Sambungkan menggunakan psql
Menginstal psql
Jika Anda tidak memiliki alat klien PostgreSQL, unduh PostgreSQL untuk platform Anda.
Menyambungkan ke server Anda
psql "host=mydemoserver-pgsql.postgres.database.azure.com port=5432 dbname=postgres user=myadmin sslmode=require"
Saat diminta, masukkan kata sandi administrator yang Anda tetapkan selama pembuatan server.
Format string untuk koneksi
host=<server-name>.postgres.database.azure.com port=5432 dbname=<database-name> user=<admin-user> password=<password> sslmode=require
Memverifikasi koneksi
Setelah menyambungkan, Anda akan melihat:
psql (14.13, server 16.4)
WARNING: psql major version 14, server major version 16.
Some psql features might not work.
SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off)
Type "help" for help.
postgres=>
Buat database
CREATE DATABASE user_database;
\c user_database
\q
Pemecahan masalah koneksi
Pemblokiran koneksi oleh firewall
Jika Anda melihat:
connection to server at "mydemoserver-pgsql.postgres.database.azure.com" (###.###.###.###), port 5432 failed: Connection timed out
Solusi: Tambahkan alamat IP Anda ke aturan firewall:
az postgres flexible-server firewall-rule create \
--resource-group myresourcegroup \
--name mydemoserver-pgsql \
--rule-name AllowMyIP \
--start-ip-address <your-ip> \
--end-ip-address <your-ip>
SSL diperlukan tetapi tidak dikonfigurasi
Pastikan string koneksi Anda menyertakan sslmode=require.
Membersihkan sumber daya
Saat Anda menyelesaikan Panduan Mulai Cepat, hapus sumber daya untuk menghindari biaya tambahan.
Menghapus seluruh grup sumber daya
az group delete --name myresourcegroup --yes
Hapus server saja
az postgres flexible-server delete \
--resource-group myresourcegroup \
--name mydemoserver-pgsql \
--yes