[{"data":1,"prerenderedAt":172},["ShallowReactive",2],{"seo-verification":3,"blog-نقل-postgresql-من-rds-و-cloud-sql-و-supabase-إلى-vps-ar":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-نقل-postgresql-من-rds-و-cloud-sql-و-supabase-إلى-vps-ar",{"id":9,"slug":10,"slugs":11,"title":15,"excerpt":16,"readTime":17,"views":18,"isPinned":19,"publishedAt":20,"updatedAt":21,"category":22,"categories":28,"featuredImage":30,"bgImage":31,"posterImage":32,"relatedSolution":30,"intro":33,"sections":34,"ctaTitle":116,"ctaBody":117,"ctaButton":118,"ctaUrl":119,"relatedPosts":120},461,"نقل-postgresql-من-rds-و-cloud-sql-و-supabase-إلى-vps",{"fr":12,"en":13,"ar":10,"es":14},"postgresql-migrer-cloud-vers-self-hosted-vps","migrate-postgresql-from-rds-cloud-sql-supabase-to-vps","migrar-postgresql-de-rds-cloud-sql-o-supabase-a-un-vps","نقل PostgreSQL من السحابة المُدارة إلى VPS","‫خطة هجرة PostgreSQL خطوة بخطوة من RDS وCloud SQL وSupabase إلى VPS مستضاف ذاتياً: أوامر دقيقة وأفخاخ خاصة بكل مصدر وتحويل بدون توقف.",13,0,false,"2026-10-16T00:00:00+00:00","2026-10-18T21:57:56+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},6,"قواعد البيانات","bases-de-donnees","bg-teal-500\u002F10 text-teal-400","database",[29],{"id":23,"name":24,"slug":25,"color":26,"icon":27},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fpostgresql-migrer-cloud-vers-self-hosted-vps-poster.svg","‫فاتورة ‫RDS تجاوزت حداً مؤلماً، أو ‫Supabase عدّلت أسعارها للتو: الإشارة واضحة، حان وقت تقييم الاستضافة الذاتية. ‫PostgreSQL على ‫VPS مخصص يعيد تكلفة ثابتة وقابلة للتنبؤ، ويرفع القيود عن الامتدادات ويزيل التقييد بمزوّد واحد. يغطي هذا الدليل الهجرة من المصادر المُدارة الثلاثة الأكثر انتشاراً — ‫AWS RDS وGoogle Cloud SQL وSupabase — بأوامر دقيقة، وأفخاخ خاصة بكل مصدر، وإجراء تحويل تدريجي يحافظ على التوافر من البداية إلى النهاية.",[35,39,49,52,55,58,61,85,107,110,113],{"type":36,"title":37,"body":38},"h2","‫لماذا تترك قاعدة البيانات المُدارة","‫تحلّ قواعد البيانات المُدارة مشكلة حقيقية: إنها تزيل عمليات اليوم الأول (التثبيت والنسخ المتماثل والنسخ الاحتياطية التلقائية). لكن نموذج أسعارها مصمم ليتصاعد بشكل غير خطي مع النمو. على ‫AWS RDS، يُفوتر كل مكوّن بشكل منفصل: حوسبة النسخة، والتخزين ‫gp3 لكل جيجابايت، و‫IOPS المُخصصة، وعقدة ‫Multi-AZ الثانوية، والنسخ الاحتياطية خارج النافذة المُضمّنة، وعمليات نقل البيانات الصادرة. نسخة `db.r6g.xlarge` بتوافر عالٍ مع 200 جيجابايت من تخزين ‫gp3 يمكن أن تتجاوز 800 دولار شهرياً بسهولة على ‫us-east-1؛ عند 500 جيجابايت، تتجاوز 3000 دولار شهرياً. تعمل نفس أعباء العمل على ‫VPS مخصص بجزء بسيط من هذه التكلفة.\n\n‫التكلفة ليست المتغير الوحيد. قيود الامتدادات عائق تقني ملموس: ‫pgvector على ‫RDS متاح منذ 2023، لكن ‫pg_graphql أو بعض إصدارات ‫d_btree_gist ليست كذلك. على ‫Supabase، الكتالوج أوسع لكنه مرتبط بالمنصة. الامتثال للبيانات هو المحرك الثالث: تخزين قاعدة البيانات في مركز البيانات الذي تختاره، دون نقل بين مناطق مُفوتر، يغير المعادلة للبُنى الخاضعة للائحة ‫GDPR أو سياسات إقامة البيانات.",{"type":40,"title":41,"items":42},"ul","‫ما الذي تحتفظ به وما الذي ستديره بنفسك",[43,44,45,46,47,48],"**‫تحتفظ بـ**: ‫PostgreSQL نفسه بالإصدار الذي تختاره، وجميع بياناتك، وامتداداتك، وأدوارك وامتيازاتك، وسلاسل الاتصال بمجرد تحديث متغير `DATABASE_URL`.","**‫تحتفظ بـ**: الأداء — على ‫VPS NVMe مُحسَّن بشكل جيد، تعادل عمليات القراءة والكتابة العشوائية لـ ‫PostgreSQL على الأقل تلك الخاصة بنسخة مُدارة من نفس الفئة.","**‫تدير**: النسخ الاحتياطية — `pg_dump` بجدول ‫cron، أو `pg_basebackup` لنسخة فيزيائية؛ يجب تخزين الملفات خارج الخادم (تخزين الكائنات، ‫VPS ثانٍ).","**‫تدير**: التحديثات الصغيرة (تصحيحات الأمان) والترقيات الكبيرة (هجرة الإصدار) — التكرار منخفض والإجراء موثق، لكن لا أحد يطبقها نيابةً عنك.","**‫تدير**: اتصالات ‫SSL — إنشاء شهادة، تهيئة `ssl = on` في `postgresql.conf`، فرض ‫TLS في `pg_hba.conf`؛ بدون هذا تنتقل البيانات بنص واضح.","**‫تدير**: المراقبة — `pg_stat_statements` و`pg_stat_activity` وتنبيهات على مساحة القرص والاتصالات النشطة؛ تختفي لوحات التحكم عند المزوّد مع قاعدة البيانات المُدارة.",{"type":36,"title":50,"body":51},"‫قبل الهجرة — قائمة المتطلبات الأساسية","‫قبل تشغيل أول `pg_dump`، أربع نقاط تحدد نجاح الهجرة.\n\n**‫إصدار PostgreSQL: المصدر مقابل الوجهة.** يمكن استعادة تفريغ أنتجه `pg_dump` من الإصدار ‫N على الإصدار ‫N أو أعلى، وليس أدنى. تحقق من إصدار المصدر: `psql -h \u003Cendpoint> -U \u003Cuser> -c 'SELECT version();'`. على ‫VPS، ثبّت نفس الإصدار الرئيسي أو أعلى من مستودع ‫PGDG.\n\n**‫الامتدادات النشطة.** أدرج الامتدادات المثبتة على المصدر: `SELECT extname, extversion FROM pg_extension ORDER BY extname;`. بعضها متاح بشكل عام (`uuid-ossp` و`hstore` و`pgcrypto`). أخرى تتطلب حزمة نظام إضافية أو تجميعاً من المصدر. امتدادات ‫Supabase الخاصة (`pg_graphql` و`pg_net` و`pgsodium`) غير موجودة في ‫PostgreSQL الافتراضي.\n\n**‫حجم قاعدة البيانات.** `SELECT pg_size_pretty(pg_database_size('\u003Cbase>'));` يعطي الحجم المنطقي. على ‫VPS، خطط لمساحة القرص اللازمة للتفريغ نفسه، وقاعدة البيانات المستعادة، وهامش 20% لملفات ‫WAL ومؤشرات الاستعادة المؤقتة.\n\n**‫الاتصالات النشطة.** قاعدة البيانات تحت حركة المرور لا يمكن تفريغها بشكل نظيف مع معاملات طويلة جارية. تحقق: `SELECT count(*), state FROM pg_stat_activity GROUP BY state;`. إذا استمرت اتصالات بحالة `idle in transaction` لعدة دقائق، حدد تلك الجلسات وأنهها قبل تشغيل تفريغ الهجرة.",{"type":36,"title":53,"body":54},"‫الهجرة من AWS RDS","‫يفرض ‫RDS ‫TLS على الاتصالات الواردة (`rds.force_ssl = 1` افتراضياً على النسخ الحديثة). لذا فإن الخيار `--sslmode=require` ضروري على `pg_dump`، وإلا فإن الاتصال يُرفض أو يُنشأ بدون تشفير حسب تهيئة النسخة.\n\n‫استخدم نقطة نهاية القراءة (‫Read Replica) للتفريغ حيثما أمكن لتجنب إضافة حمل على النسخة الأساسية أثناء الهجرة.\n\n```bash\nexport PGPASSWORD='كلمة-مرورك'\npg_dump \\\n  -h your-instance.xxxx.rds.amazonaws.com \\\n  -U your_user \\\n  --sslmode=require \\\n  -Fc \\\n  -f \u002Ftmp\u002Fdump-rds.pgc \\\n  your_database\n```\n\n‫ثم استعد على ‫VPS بشكل متوازٍ لتسريع الاستيراد:\n\n```bash\npg_restore \\\n  --no-owner \\\n  --no-privileges \\\n  -h localhost \\\n  -U your_vps_user \\\n  -d your_database \\\n  -j 4 \\\n  \u002Ftmp\u002Fdump-rds.pgc\n```\n\n‫الخياران `--no-owner` و`--no-privileges` ضروريان: ينشئ ‫RDS أدواراً داخلية (`rdsadmin` و`rds_superuser`) غائبة عن أي ‫PostgreSQL خارج ‫AWS. المتغيرات غير القابلة للنقل من ‫RDS: `rds.force_ssl` وأي معلمة ذات بادئة `rds.` هي معلمات نظام AWS خاصة غير موجودة في `postgresql.conf` القياسي.",{"type":36,"title":56,"body":57},"‫الهجرة من Google Cloud SQL","‫يقدم ‫Cloud SQL مسارَي تصدير: ‫Cloud SQL Auth Proxy (موصى به للاتصالات البرمجية) والتصدير إلى حاوية ‫GCS (موصى به للتفريغات الكبيرة أو الهجرات أحادية الاتجاه).\n\n**‫عبر Cloud SQL Auth Proxy** (اتصال مباشر، مناسب للقواعد \u003C 10 جيجابايت):\n\n```bash\ncloud_sql_proxy -instances=my-project:europe-west1:my-instance=tcp:5433 &\n\nexport PGPASSWORD='your-password'\npg_dump \\\n  -h 127.0.0.1 \\\n  -p 5433 \\\n  -U your_user \\\n  -Fc \\\n  -f \u002Ftmp\u002Fdump-cloudsql.pgc \\\n  your_database\n```\n\n**‫عبر تصدير GCS** (موصى به للقواعد الكبيرة):\n\n```bash\ngcloud sql export sql my-instance \\\n  gs:\u002F\u002Fmy-bucket\u002Fdump-cloudsql.sql \\\n  --database=your_database \\\n  --offload\n\ngsutil cp gs:\u002F\u002Fmy-bucket\u002Fdump-cloudsql.sql \u002Ftmp\u002F\n\npsql -h localhost -U your_vps_user -d your_database \\\n  -f \u002Ftmp\u002Fdump-cloudsql.sql\n```\n\n‫الفخ الرئيسي لـ ‫Cloud SQL: الخيار `--offload` ينقل معالجة التفريغ إلى عامل ثانوي ويقلل التأثير على النسخة الأساسية. يُنشئ ‫Cloud SQL أيضاً مستخدم `cloudsqladmin` — طبّق `--no-owner --no-privileges` على الاستعادة كما هو الحال مع ‫RDS.",{"type":36,"title":59,"body":60},"‫الهجرة من Supabase","‫يكشف ‫Supabase وصولاً مباشراً لـ ‫PostgreSQL عبر ‫URI اتصال متاح في إعدادات المشروع (Settings > Database > Connection string > URI).\n\n```bash\nexport DATABASE_URL=\"postgresql:\u002F\u002Fpostgres:your-password@db.abcdef.supabase.co:5432\u002Fpostgres\"\n\npg_dump \\\n  \"$DATABASE_URL\" \\\n  --sslmode=require \\\n  -Fc \\\n  --no-owner \\\n  --no-privileges \\\n  -f \u002Ftmp\u002Fdump-supabase.pgc\n```\n\n**‫الامتدادات الموجودة على Supabase والغائبة عن VPS الافتراضي.** هذا هو الفخ الرئيسي عند الهجرة من ‫Supabase:\n\n- ‫`pgvector`: متاح على ‫Supabase، يجب تثبيته يدوياً على ‫VPS (`sudo apt install postgresql-17-pgvector` على ‫Debian\u002FUbuntu، ثم `CREATE EXTENSION vector;`).\n- ‫`pg_graphql`: امتداد ‫Supabase الخاص الذي يكشف نقطة نهاية ‫GraphQL تلقائية. غير موجود في مستودعات ‫APT القياسية — يتطلب التجميع من المصدر (‫Rust + cargo-pgrx) أو إعادة كتابة طبقة الوصول ‫GraphQL خارج قاعدة البيانات.\n- ‫`pg_net`: يسمح بطلبات ‫HTTP من دوال ‫SQL. غائب عن الحزم القياسية — أعد كتابة الاستخدامات خارج قاعدة البيانات.\n- ‫`pgsodium`: تشفير على مستوى قاعدة البيانات. تكامله مع ‫Vault خاص بـ ‫Supabase.\n- ‫`http`: امتداد مجتمعي متاح كـ `postgresql-17-http` على ‫Debian\u002FUbuntu.\n\n‫قبل تشغيل التفريغ، أدرج الامتدادات النشطة بشكل شامل: `SELECT extname FROM pg_extension WHERE extname NOT IN ('plpgsql');`",{"type":62,"title":63,"headers":64,"rows":69},"comparison","‫الأوامر حسب المصدر",[65,66,67,68],"‫المصدر","‫أمر pg_dump","‫الأفخاخ المعروفة","‫المتغير الذي يجب إعادة تهيئته",[70,75,80],[71,72,73,74],"‫AWS RDS","`pg_dump -h \u003Cendpoint> -U \u003Cuser> --sslmode=require -Fc -f dump.pgc \u003Cbase>`","‫`--no-owner --no-privileges` مطلوب؛ أدوار `rdsadmin`\u002F`rds_superuser` غائبة عن ‫VPS","‫`rds.force_ssl` → استبدله بـ `ssl = on` في `postgresql.conf`",[76,77,78,79],"‫Google Cloud SQL","‫`pg_dump -h 127.0.0.1 -p 5433 -U \u003Cuser> -Fc -f dump.pgc \u003Cbase>` عبر ‫Auth Proxy، أو `gcloud sql export sql` → حاوية ‫GCS","‫`--offload` لتقليل التأثير على الأساسي؛ `--no-owner --no-privileges` ضد `cloudsqladmin`","‫Auth Proxy للإزالة؛ الاتصال المباشر بـ ‫VPS كبديل",[81,82,83,84],"‫Supabase","`pg_dump \"$DATABASE_URL\" --sslmode=require -Fc --no-owner --no-privileges -f dump.pgc`","‫`pg_graphql` و`pg_net` و`pgsodium` غائبة عن ‫VPS الافتراضي؛ `pgvector` للتثبيت يدوياً","‫‫URL اتصال Supabase → `DATABASE_URL` مباشر لـ ‫VPS؛ ‫Supabase Auth للفصل",{"type":86,"title":87,"steps":88},"steps","‫التحويل التدريجي بدون توقف",[89,92,95,98,101,104],{"title":90,"body":91},"‫لقطة أولاً — حفظ المصدر في نقطة زمنية","‫قبل أي عملية، خذ لقطة يدوية لنسخة المصدر من وحدة تحكم المزوّد (‫RDS: Actions > Take snapshot؛ ‫Cloud SQL: Operations > Create backup؛ ‫Supabase: Settings > Backups > Trigger backup). هذه اللقطة شبكة أمانك: تتيح لك العودة إلى الحالة الدقيقة لقاعدة البيانات قبل الهجرة.",{"title":93,"body":94},"‫pg_dump إنتاج — تفريغ كامل لقاعدة البيانات الإنتاجية","‫شغّل التفريغ باستخدام الأمر المناسب لمصدرك (انظر القسم السابق). سجّل وقت البداية والنهاية للتفريغ — أي معاملات تُؤكَّد بعد بدء التفريغ لن تكون في الملف. على ‫RDS وCloud SQL، استخدم نقطة نهاية القراءة إن كانت متاحة. تحقق من أن ملف ‫dump.pgc غير فارغ وأكمل بدون أخطاء: `ls -lh \u002Ftmp\u002Fdump-*.pgc`.",{"title":96,"body":97},"‫pg_restore VPS — الاستعادة والتحقق الأولي","‫على ‫VPS، أنشئ قاعدة البيانات الهدف واستعد: `createdb -U postgres your_database && pg_restore --no-owner --no-privileges -h localhost -U your_user -d your_database -j 4 \u002Ftmp\u002Fdump-source.pgc`. بعد اكتمال الاستعادة، تحقق من أعداد الصفوف في الجداول الحيوية: `SELECT relname, n_live_tup FROM pg_stat_user_tables ORDER BY n_live_tup DESC LIMIT 20;` على كلا النسختين وقارن الأرقام.",{"title":99,"body":100},"‫قراءة فقط على المصدر — تجميد قاعدة البيانات الأصلية","‫اختر نافذة تحويل (ليل، عطلة نهاية الأسبوع، فترة انخفاض الحركة). في بداية هذه النافذة، ضع قاعدة البيانات المصدر في وضع القراءة فقط لإيقاف الفجوة بين المصدر والوجهة: `ALTER DATABASE your_database SET default_transaction_read_only = on;`. هذه الخطوة هي اللحظة الوحيدة التي يكون فيها توقف قصير للكتابة حتمياً — وعادةً ما يستغرق أقل من 30 ثانية.",{"title":102,"body":103},"‫التحقق من أعداد الصفوف — التناسق قبل التحويل","‫مع المصدر في وضع القراءة فقط، شغّل فحصاً نهائياً لعدد الصفوف جدولاً بجدول: `psql -h \u003Csource> -U \u003Cuser> -c 'SELECT count(*) FROM your_main_table;'` وقارن مع `psql -h localhost -U your_user -c 'SELECT count(*) FROM your_main_table;'`. إذا استمرت فجوة، شغّل تفريغاً تدريجياً للسجلات المنشأة بعد وقت بدء التفريغ الأول وأدرجها حتى التقارب.",{"title":105,"body":106},"‫تبديل DATABASE_URL — التطبيق يشير إلى VPS","‫حدّث متغير البيئة `DATABASE_URL` للإشارة إلى ‫VPS: `postgresql:\u002F\u002Fyour_user:your-password@\u003CVPS-IP>:5432\u002Fyour_database?sslmode=require`. أعد تشغيل التطبيق. تحقق من نجاح أول الاستعلامات وخلو السجلات من أخطاء الاتصال وأن الكتابات تصل إلى ‫VPS. يبقى المصدر متاحاً في وضع القراءة فقط لـ 24 إلى 48 ساعة أخرى — لا تحذفه فوراً.",{"type":36,"title":108,"body":109},"‫التحقق بعد الهجرة","‫أربعة فحوصات تجريها في الساعة التالية للتحويل.\n\n**‫أعداد الصفوف.** على أكثر عشرة جداول حجماً، قارن أعداد المصدر والوجهة. الفجوة الصفرية تؤكد التقاط جميع المعاملات؛ فجوة متبقية من عدة صفوف قد تشير إلى معاملات كانت جارية وقت التحويل.\n\n**‫المجاميع الاختبارية.** على الجداول الحيوية، احسب مجموعاً اختبارياً للتحكم: `SELECT md5(string_agg(id::text || amount::text, ',' ORDER BY id)) FROM orders;` وقارن النتيجة على كلا النسختين. المجموع المتطابق يؤكد سلامة البيانات صفاً بصف.\n\n**‫اختبار الامتدادات.** لكل امتداد يستخدمه التطبيق، شغّل استعلام اختبار بسيط: `SELECT 'test'::vector(3)` لـ ‫pgvector، `SELECT gen_random_uuid()` لـ `pgcrypto`. الامتداد المفقود أو المهيأ بشكل خاطئ يظهر فوراً.\n\n**‫اتصالات التطبيق.** تحقق في سجلات التطبيق أن الاتصالات تُنشأ على ‫VPS لا على قاعدة البيانات القديمة. تحقق أيضاً من نشاط اتصالات ‫SSL: `SELECT ssl, client_addr FROM pg_stat_ssl JOIN pg_stat_activity USING (pid) WHERE client_addr IS NOT NULL LIMIT 5;`.",{"type":111,"body":112},"tip","**‫التراجع في أقل من 5 دقائق.** لمدة 24 إلى 48 ساعة بعد التحويل، يبقى المصدر حياً في وضع القراءة فقط. إذا اكتُشفت مشكلة حاجبة، التراجع فوري: أعد `DATABASE_URL` القديم في متغير البيئة وأعد تشغيل التطبيق. لا فقدان بيانات — المصدر لم يُعدَّل منذ التحويل (هو في وضع القراءة فقط) و‫VPS سجّل الكتابات الجديدة منذ التحويل. لا تحذف المصدر أبداً قبل 48 ساعة من الاستقرار على ‫VPS.",{"type":36,"title":114,"body":115},"‫للمزيد","‫يغطي هذا الدليل الهجرة أحادية الاتجاه — الإجراء الأكثر شيوعاً لمغادرة مزوّد مُدار. ثلاثة مواضيع تكميلية تستحق الاستكشاف حسب سياقك.\n\n\u003Ca href=\"\u002Fblog\u002Fpostgresql-self-hosted-vs-rds\">PostgreSQL المستضاف ذاتياً مقابل Amazon RDS\u003C\u002Fa> — مقارنة ‫ROI مع أرقام بين النموذجين، مع عتبات حجم قاعدة البيانات وحركة المرور التي يصبح عندها الاستضافة الذاتية واضحة الأفضلية.\n\n\u003Ca href=\"\u002Fblog\u002Fheberger-postgresql-vps\">استضافة PostgreSQL على VPS\u003C\u002Fa> — التهيئة التفصيلية بعد التثبيت: `postgresql.conf` و`pg_hba.conf` و‫pgBouncer والمراقبة والنسخ الاحتياطية والتصليب.\n\n\u003Ca href=\"\u002Fblog\u002Fpostgresql-haute-disponibilite-patroni-vps\">PostgreSQL بتوافر عالٍ مع Patroni على VPS\u003C\u002Fa> — إذا كان اتفاقية مستوى الخدمة تتطلب ‫failover تلقائياً، فإن ‫Patroni على كتلة ثلاثة عقد يعيد إنتاج ضمانات ‫RDS Multi-AZ أو ‫Cloud SQL HA بدون علاوة المزوّد.","‫انشر قاعدة بيانات PostgreSQL على VPS مخصص","‫وصول root، تخزين SSD NVMe، IPv4 مضمّن، دون رسوم إضافية لكل جيجابايت. اختر إعدادك وهاجر بثقة.","‫الهجرة إلى VPS Cloud مع ServOrbit","\u002Fvps-cloud",[121,138,156],{"id":122,"slug":123,"slugs":124,"title":128,"excerpt":129,"readTime":130,"views":131,"isPinned":19,"publishedAt":132,"updatedAt":133,"category":134,"categories":135,"featuredImage":30,"bgImage":31,"posterImage":137,"relatedSolution":30},239,"postgresql-sur-vps-vs-amazon-rds-مقارنة-التكلفة-2026",{"fr":125,"en":126,"ar":123,"es":127},"postgresql-self-hosted-vs-rds","self-hosted-postgresql-vs-amazon-rds-roi-comparison","postgresql-autoalojado-vs-amazon-rds","PostgreSQL sur VPS vs Amazon RDS : مقارنة التكلفة 2026","‫التكلفة الحقيقية لـ PostgreSQL على VPS مقابل Amazon RDS في 2026: أرقام، إعداد، استكشاف أخطاء ودليل هجرة.",10,3,"2026-08-09T00:00:00+00:00","2026-09-08T22:00:02+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[136],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fpostgresql-self-hosted-vs-rds-poster.svg",{"id":139,"slug":140,"slugs":141,"title":145,"excerpt":146,"readTime":147,"views":18,"isPinned":19,"publishedAt":148,"updatedAt":133,"category":149,"categories":150,"featuredImage":30,"bgImage":31,"posterImage":152,"relatedSolution":153},56,"postgresql-على-خادم-vps-قاعدة-بيانات-موثوقة-ومتحكم-بها",{"fr":142,"en":143,"ar":140,"es":144},"heberger-postgresql-vps","postgresql-on-a-vps-a-reliable-and-controlled-database","alojar-postgresql-en-un-vps","PostgreSQL على خادم VPS: قاعدة بيانات موثوقة ومُتحكَّم بها","استضف PostgreSQL على خادم VPS: وحدات التخزين والنسخ الاحتياطية والوصول الشبكي المحدود والإعداد السليم لتطبيقاتك.",4,"2026-04-25T00:00:00+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[151],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fheberger-postgresql-vps-poster.svg",{"categorySlug":154,"appSlug":155},"قواعد-البيانات","postgresql-stack",{"id":157,"slug":158,"slugs":159,"title":163,"excerpt":164,"readTime":165,"views":18,"isPinned":19,"publishedAt":166,"updatedAt":167,"category":168,"categories":169,"featuredImage":30,"bgImage":31,"posterImage":171,"relatedSolution":30},290,"توافر-postgresql-عال-مع-patroni-على-خادم-vps",{"fr":160,"en":161,"ar":158,"es":162},"postgresql-haute-disponibilite-patroni-vps","postgresql-high-availability-with-patroni-on-vps","postgresql-alta-disponibilidad-patroni-vps","توافر PostgreSQL عالٍ مع Patroni على خادم VPS","كلستر PostgreSQL بثلاثة عُقد مع Patroni 4.1 وetcd 3.6: تحوّل تلقائي خلال 30 ثانية، نسخ متزامن، بدون خدمة مُدارة.",12,"2026-08-21T00:00:00+00:00","2026-09-08T02:42:10+00:00",{"id":23,"name":24,"slug":25,"color":26,"icon":27},[170],{"id":23,"name":24,"slug":25,"color":26,"icon":27},"\u002Fblog\u002Fcovers\u002Fpostgresql-haute-disponibilite-patroni-vps-poster.svg",1792360962141]