إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
قاعدة بيانات Azure ل PostgreSQL هي خدمة مدارة يمكنك استخدامها لتشغيل وإدارة وتوسيع قواعد بيانات PostgreSQL المتوفرة بعلى.
تظهر لك هذه البداية السريعة كيفية إنشاء قاعدة بيانات Azure لمثيل خادم مرن PostgreSQL باستخدام قوالب Azure portal، أو Azure CLI، أو Azure Resource Manager (ARM).
Prerequisites
قبل أن تبدأ، تأكد من أن لديك:
- اشتراك Azure. إذا لم يكن لديك حساب، فبادر بإنشاء حساب Azure مجاني.
- الأذونات المناسبة لإنشاء الموارد في اشتراكك.
افهم ما الذي تصنعه
تتضمن نسخة Azure Database for PostgreSQL مرنة من الخوادم ما يلي:
- مجموعة مهيأة من موارد الحوسبة والتخزين.
- النشر داخل مجموعة موارد Azure.
- قاعدة بيانات يتم إنشاؤها
postgresبشكل افتراضي. -
azure_maintenanceقاعدة بيانات لعمليات الخدمة المدارة. - قاعدة
azure_sysبيانات لتخزين الاستعلامات وميزات الضبط الذاتي.
ملاحظة
عادة ما تستخدم الاتصالات المنفذ 5432، أو المنفذ 6432 إذا تم الاتصال عبر مجمع اتصال PgBouncer المدمج.
إنشاء خادم باستخدام Azure portal
انتقل إلى ساحر الخلق
- قم بتسجيل الدخول إلى بوابة Azure.
- اختر إنشاء مورد في الزاوية العلوية اليسرى.
- ضمن Categories، حدد Databases.
- ابحث واختر Azure Database for PostgreSQL flexible server.
- حدد إنشاء.
تكوين الإعدادات الأساسية
تفاصيل المشروع
| الإعدادات | القيمة المقترحة | ملاحظات |
|---|---|---|
| اشتراك |
اشتراكك | اختر مكان الفوترة على المورد |
| مجموعة الموارد | myresourcegroup | إنشاء جديد أو اختر الموجود |
تفاصيل الخادم
| الإعدادات | القيمة المقترحة | الوصف |
|---|---|---|
| اسم الخادم | mydemoserver-pgsql | ويجب أن يكون فريدًا من نوعه على الصعيد العالمي. يتم إضافة النطاق .postgres.database.azure.com تلقائيا |
| المنطقة | المنطقة الأقرب إليك | ضع في اعتبارك الامتثال، وإقامة البيانات، والتسعير، والقرب من المستخدمين |
| إصدار PostgreSQL | أحدث الإصدارات المتاحة | المدعومون حاليا: 18، 17، 16، 15، 14، 13، 12، 11 |
| نوع حمل العمل | التطوير | يستخدم التطوير وحدات SKU من Burstable (وحدات SKU). يستخدم الإنتاج الأنظمة العامة أو الذاكرة المحسنة. |
| مناطق التوفّر | بدون تفضيلات | من المفيد أن تتواجد مع طلبك |
قابلية وصول عالية
| خيار | SLA | الوصف |
|---|---|---|
| مُعطل | 99.9% | خادم واحد بدون خيار احتياطي |
| نفس المنطقة | 99.95% | الاستعداد في نفس منطقة التوفر |
| المتكرر على مستوى المنطقة | 99.99% | الاستعداد في منطقة توفر مختلفة |
Authentication
| الإعدادات | الوصف | Recommended |
|---|---|---|
| أسلوب المصادقة | كيفية المصادقة لدى المستخدمين |
-
مصادقة PostgreSQL فقط (للبدء السريع) - مصادقة Microsoft Entra (للإنتاج) - كلاهما (للمرونة) |
| "Admin username" | مستخدم المسؤول | - يجب أن يكون من 1 إلى 63 حرفا - فقط الأرقام والحروف - لا أستطيع البدء ب pg_- لا يمكن أن تكون أسماء محجوزة للنظام |
| كلمة المرور | كلمة المرور المعقدة | 8-128 حرفا بالأحرف الكبيرة والصغيرة، والأرقام، والأحرف الخاصة |
تكوين الحوسبة والتخزين
اختر تكوين الخادم للتخصيص:
حساب المستوى
| المستوى | حالة الاستخدام | الوصف |
|---|---|---|
| مندفع | التطوير | بالنسبة لأحمال العمل التي لا تحتاج إلى معالج كامل مستمر |
| الغرض العام | الانتاج | أكثر أعباء الإنتاج شيوعا |
| مُحسّن للذاكرة | أعمال العمل عالية الذاكرة | أحمال العمل التي تتطلب نسبة عالية من الذاكرة إلى وحدة المعالجة المركزية |
إعدادات التخزين
| الإعدادات | يمكن التغيير لاحقا | الوصف |
|---|---|---|
| نوع التخزين | ❌ لا | SSD بريميوم أو بريميوم SSD v2 |
| حجم التخزين | ✅ نعم (زيادة فقط) | لا يمكن أن تنكمش بعد الخلق |
| مستوى الأداء | ✅ نعم | يتحكم في IOPS ومعدل النقل |
| التحجيم التلقائي للتخزين | ✅ نعم | التوسع التلقائي عند الاقتراب من الحدود |
إعدادات النسخ الاحتياطي
| الإعدادات | يمكن التغيير لاحقا | الوصف |
|---|---|---|
| الاحتفاظ بالنسخة الاحتياطية | ✅ نعم | 7-35 يوما |
| تكرار النسخ الاحتياطي | ❌ لا | زائد محليا، أو تكرار منطقي، أو تكرار جغرافي |
| التكرار الجغرافي | ❌ لا | متوفر فقط في المناطق المزدوجة من Azure |
تكوين شبكة الاتصال
اختر طريقة الاتصال الخاصة بك (لا يمكن تغييرها بعد الإنشاء):
الوصول العام (عناوين IP المسموح بها)
اتصل عبر نقطة نهاية عامة باستخدام قواعد جدار الحماية.
الإعدادات:
| الإعدادات | الوصف |
|---|---|
| السماح بالوصول العام | تمكين الوصول العام لتكوين قواعد جدار الحماية |
| Allow Azure services | Permit connections from all Azure services |
| إضافة عنوان IP الحالي للعميل | أضف عنوان IP الخاص بك إلى قائمة التسميح |
الوصول الخاص (تكامل الشبكة الافتراضية)
اتصل عبر نقطة نهاية خاصة داخل شبكة افتراضية. لمزيد من المعلومات، راجع Network with private access for Azure Database ل PostgreSQL.
تكوين الأمان
| الإعدادات | يمكن التغيير لاحقا | الخيارات |
|---|---|---|
| مفتاح تشفير البيانات | ❌ لا | الإدارة من قبل الخدمة أو الإدارة من قبل العملاء |
إضافة علامات الموارد (اختياري)
نظم الموارد باستخدام أزواج الاسم والقيمة:
| اسم | قيمة | الغرض |
|---|---|---|
| البيئة | التطوير | تحديد نوع البيئة |
| CostCenter | IT-Dept | تتبع التكاليف حسب القسم |
| مالك | admin@contoso.com | تحديد الطرف المسؤول |
المراجعة والإنشاء
- حدد "Review + create".
- راجع جميع الإعدادات.
- اختر إنشاء للنشر.
عادة ما يستغرق النشر من 5 إلى 10 دقائق. عند الانتهاء، اختر الرجوع إلى المورد للوصول إلى خادمك.
إنشاء خادم باستخدام Azure CLI
المتطلبات المسبقة ل CLI
في هذا البرنامج النصي، استخدم واجهة سطر الأوامر في Azure محليًا حيث يستغرق وقتًا طويلاً لتشغيله في Cloud Shell.
تسجيل الدخول إلى Azure
استخدم البرنامج النصي التالي لتسجيل الدخول باستخدام اشتراك معين.
subscription="<subscriptionId>" # add subscription here
az account set -s $subscription # ...or use 'az login'
لمزيد من المعلومات، راجع تعيين اشتراك نشط أو تسجيل الدخول بشكل تفاعلي
إذا كنت تستخدم Azure Cloud Shell، فأنت بالفعل مسجل.
إنشاء خادم باستخدام CLI
أنشئ خادما بأمر واحد:
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"
مرجع معلمات CLI
| Parameter | الوصف | مثال |
|---|---|---|
--resource-group |
اسم مجموعة الموارد | myresourcegroup |
--name |
اسم خادم فريد عالميا | mydemoserver-pgsql |
--location |
منطقة Azure | eastus |
--admin-user |
اسم المستخدم للمسؤول | myadmin |
--admin-password |
كلمة مرور المسؤول | كلمة المرور الخاصة بك123! |
--sku-name |
وحدة SKU الحوسبة | Standard_D4ds_v5 |
--tier |
حساب المستوى | قابل للتفجير، عام الأغراض، محسن للذاكرة |
--storage-size |
التخزين في جيجابايت | 128 |
--public-access |
عناوين IP المسموح بها | 0.0.0.0 (جميع خدمات Azure)، عنوان IP، أو نطاق IP |
--version |
إصدار PostgreSQL | 16 |
--high-availability |
وضع HA | Disabled، SameZone، ZoneRedundant |
--backup-retention |
أيام الاحتفاظ الاحتياطية | 7-35 |
مثال متقدم على CLI
أنشئ خادما مكررا في المنطقة ومتاحا بشكل كبير:
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
إنشاء خادم باستخدام قالب ARM
نظرة عامة على قالب ARM
قوالب Azure Resource Manager (ARM) تتيح لك تعريف البنية التحتية ككود. استخدم القوالب للنشر المتكرر.
قالب ARM الحد الأدنى
احفظ هذا الملف ك 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]"
}
}
}
نشر قالب 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>
الحصول على معلومات الاتصال
بعد إنشاء خادمك، استرجع تفاصيل الاتصال:
استخدام مدخل Microsoft Azure
- اذهب إلى خادمك في بوابة Azure.
- افتح صفحة النظرة العامة .
- انسخ هذه القيم:
-
اسم الخادم (نقطة النهاية):
mydemoserver-pgsql.postgres.database.azure.com -
تسجيل دخول المسؤول:
myadmin
-
اسم الخادم (نقطة النهاية):
استخدام Azure CLI
az postgres flexible-server show \
--resource-group myresourcegroup \
--name mydemoserver-pgsql \
--query "{serverName:fullyQualifiedDomainName, adminUser:administratorLogin}" \
--output table
الاتصال باستخدام psql
تثبيت psql
إذا لم تكن لديك أدوات عميل PostgreSQL، قم بتحميل PostgreSQL لمنصتك.
اتصل بخادمك
psql "host=mydemoserver-pgsql.postgres.database.azure.com port=5432 dbname=postgres user=myadmin sslmode=require"
عند الطلب، أدخل كلمة مرور المسؤول التي قمت بتعيينها أثناء إنشاء الخادم.
تنسيق سلسلة الاتصال
host=<server-name>.postgres.database.azure.com port=5432 dbname=<database-name> user=<admin-user> password=<password> sslmode=require
تحقق من الاتصال
بعد الاتصال، يجب أن ترى:
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=>
إنشاء قاعدة بيانات
CREATE DATABASE user_database;
\c user_database
\q
استكشاف مشاكل الاتصال
اتصال حجب جدار الحماية
إذا رأيت:
connection to server at "mydemoserver-pgsql.postgres.database.azure.com" (###.###.###.###), port 5432 failed: Connection timed out
الحل: أضف عنوان IP الخاص بك إلى قواعد جدار الحماية:
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 مطلوب لكنه غير مهيأ
تأكد من أن سلسلة الاتصال الخاصة بك تتضمن sslmode=require.
تنظيف الموارد
عندما تنتهي من البدء السريع، احذف الموارد لتجنب الرسوم.
حذف مجموعة الموارد بالكامل
az group delete --name myresourcegroup --yes
احذف فقط الخادم
az postgres flexible-server delete \
--resource-group myresourcegroup \
--name mydemoserver-pgsql \
--yes