[{"data":1,"prerenderedAt":175},["ShallowReactive",2],{"seo-verification":3,"blog-نقل-postgresql-من-rds-و-cloud-sql-و-supabase-إلى-vps-ma-ar":6,"promo-bar-likely":20},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"blog-نقل-postgresql-من-rds-و-cloud-sql-و-supabase-إلى-vps-ma-ar",{"id":9,"slug":10,"slugs":11,"title":15,"excerpt":16,"readTime":17,"views":18,"isPinned":19,"noindex":20,"publishedAt":21,"updatedAt":22,"category":23,"categories":29,"featuredImage":31,"bgImage":32,"posterImage":33,"relatedSolution":31,"intro":34,"sections":35,"ctaTitle":117,"ctaBody":118,"ctaButton":119,"ctaUrl":120,"relatedPosts":121},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,true,"2026-10-16T00:00:00+00:00","2026-10-18T21:57:56+00:00",{"id":24,"name":25,"slug":26,"color":27,"icon":28},6,"قواعد البيانات","bases-de-donnees","bg-teal-500\u002F10 text-teal-400","database",[30],{"id":24,"name":25,"slug":26,"color":27,"icon":28},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 — بأوامر دقيقة، وأفخاخ خاصة بكل مصدر، وإجراء تحويل تدريجي يحافظ على التوافر من البداية إلى النهاية.",[36,40,50,53,56,59,62,86,108,111,114],{"type":37,"title":38,"body":39},"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":41,"title":42,"items":43},"ul","‫ما الذي تحتفظ به وما الذي ستديره بنفسك",[44,45,46,47,48,49],"**‫تحتفظ بـ**: ‫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":37,"title":51,"body":52},"‫قبل الهجرة — قائمة المتطلبات الأساسية","‫قبل تشغيل أول `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":37,"title":54,"body":55},"‫الهجرة من 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":37,"title":57,"body":58},"‫الهجرة من 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":37,"title":60,"body":61},"‫الهجرة من 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":63,"title":64,"headers":65,"rows":70},"comparison","‫الأوامر حسب المصدر",[66,67,68,69],"‫المصدر","‫أمر pg_dump","‫الأفخاخ المعروفة","‫المتغير الذي يجب إعادة تهيئته",[71,76,81],[72,73,74,75],"‫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`",[77,78,79,80],"‫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 كبديل",[82,83,84,85],"‫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":87,"title":88,"steps":89},"steps","‫التحويل التدريجي بدون توقف",[90,93,96,99,102,105],{"title":91,"body":92},"‫لقطة أولاً — حفظ المصدر في نقطة زمنية","‫قبل أي عملية، خذ لقطة يدوية لنسخة المصدر من وحدة تحكم المزوّد (‫RDS: Actions > Take snapshot؛ ‫Cloud SQL: Operations > Create backup؛ ‫Supabase: Settings > Backups > Trigger backup). هذه اللقطة شبكة أمانك: تتيح لك العودة إلى الحالة الدقيقة لقاعدة البيانات قبل الهجرة.",{"title":94,"body":95},"‫pg_dump إنتاج — تفريغ كامل لقاعدة البيانات الإنتاجية","‫شغّل التفريغ باستخدام الأمر المناسب لمصدرك (انظر القسم السابق). سجّل وقت البداية والنهاية للتفريغ — أي معاملات تُؤكَّد بعد بدء التفريغ لن تكون في الملف. على ‫RDS وCloud SQL، استخدم نقطة نهاية القراءة إن كانت متاحة. تحقق من أن ملف ‫dump.pgc غير فارغ وأكمل بدون أخطاء: `ls -lh \u002Ftmp\u002Fdump-*.pgc`.",{"title":97,"body":98},"‫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":100,"body":101},"‫قراءة فقط على المصدر — تجميد قاعدة البيانات الأصلية","‫اختر نافذة تحويل (ليل، عطلة نهاية الأسبوع، فترة انخفاض الحركة). في بداية هذه النافذة، ضع قاعدة البيانات المصدر في وضع القراءة فقط لإيقاف الفجوة بين المصدر والوجهة: `ALTER DATABASE your_database SET default_transaction_read_only = on;`. هذه الخطوة هي اللحظة الوحيدة التي يكون فيها توقف قصير للكتابة حتمياً — وعادةً ما يستغرق أقل من 30 ثانية.",{"title":103,"body":104},"‫التحقق من أعداد الصفوف — التناسق قبل التحويل","‫مع المصدر في وضع القراءة فقط، شغّل فحصاً نهائياً لعدد الصفوف جدولاً بجدول: `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":106,"body":107},"‫تبديل DATABASE_URL — التطبيق يشير إلى VPS","‫حدّث متغير البيئة `DATABASE_URL` للإشارة إلى ‫VPS: `postgresql:\u002F\u002Fyour_user:your-password@\u003CVPS-IP>:5432\u002Fyour_database?sslmode=require`. أعد تشغيل التطبيق. تحقق من نجاح أول الاستعلامات وخلو السجلات من أخطاء الاتصال وأن الكتابات تصل إلى ‫VPS. يبقى المصدر متاحاً في وضع القراءة فقط لـ 24 إلى 48 ساعة أخرى — لا تحذفه فوراً.",{"type":37,"title":109,"body":110},"‫التحقق بعد الهجرة","‫أربعة فحوصات تجريها في الساعة التالية للتحويل.\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":112,"body":113},"tip","**‫التراجع في أقل من 5 دقائق.** لمدة 24 إلى 48 ساعة بعد التحويل، يبقى المصدر حياً في وضع القراءة فقط. إذا اكتُشفت مشكلة حاجبة، التراجع فوري: أعد `DATABASE_URL` القديم في متغير البيئة وأعد تشغيل التطبيق. لا فقدان بيانات — المصدر لم يُعدَّل منذ التحويل (هو في وضع القراءة فقط) و‫VPS سجّل الكتابات الجديدة منذ التحويل. لا تحذف المصدر أبداً قبل 48 ساعة من الاستقرار على ‫VPS.",{"type":37,"title":115,"body":116},"‫للمزيد","‫يغطي هذا الدليل الهجرة أحادية الاتجاه — الإجراء الأكثر شيوعاً لمغادرة مزوّد مُدار. ثلاثة مواضيع تكميلية تستحق الاستكشاف حسب سياقك.\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",[122,139,159],{"id":123,"slug":124,"slugs":125,"title":129,"excerpt":130,"readTime":131,"views":132,"isPinned":19,"noindex":19,"publishedAt":133,"updatedAt":134,"category":135,"categories":136,"featuredImage":31,"bgImage":32,"posterImage":138,"relatedSolution":31},239,"postgresql-sur-vps-vs-amazon-rds-مقارنة-التكلفة-2026",{"fr":126,"en":127,"ar":124,"es":128},"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":24,"name":25,"slug":26,"color":27,"icon":28},[137],{"id":24,"name":25,"slug":26,"color":27,"icon":28},"\u002Fblog\u002Fcovers\u002Fpostgresql-self-hosted-vs-rds-poster.svg",{"id":140,"slug":141,"slugs":142,"title":146,"excerpt":147,"readTime":148,"views":149,"isPinned":19,"noindex":19,"publishedAt":150,"updatedAt":151,"category":152,"categories":153,"featuredImage":31,"bgImage":32,"posterImage":155,"relatedSolution":156},56,"postgresql-على-خادم-vps-قاعدة-بيانات-موثوقة-ومتحكم-بها",{"fr":143,"en":144,"ar":141,"es":145},"heberger-postgresql-vps","postgresql-on-a-vps-a-reliable-and-controlled-database","alojar-postgresql-en-un-vps","‎PostgreSQL على خادم VPS: قاعدة بيانات موثوقة ومتحكَّم بها","‎استضف PostgreSQL على VPS: إعداد الإنتاج، نسخ pgBackRest، HA بالبث، مقارنة RDS\u002FSupabase\u002FNeon واستكشاف أخطاء OOM.",9,1,"2026-04-25T00:00:00+00:00","2026-10-21T15:21:37+00:00",{"id":24,"name":25,"slug":26,"color":27,"icon":28},[154],{"id":24,"name":25,"slug":26,"color":27,"icon":28},"\u002Fblog\u002Fcovers\u002Fheberger-postgresql-vps-poster.svg",{"categorySlug":157,"appSlug":158},"قواعد-البيانات","postgresql-stack",{"id":160,"slug":161,"slugs":162,"title":166,"excerpt":167,"readTime":168,"views":18,"isPinned":19,"noindex":19,"publishedAt":169,"updatedAt":170,"category":171,"categories":172,"featuredImage":31,"bgImage":32,"posterImage":174,"relatedSolution":31},290,"توافر-postgresql-عال-مع-patroni-على-خادم-vps",{"fr":163,"en":164,"ar":161,"es":165},"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":24,"name":25,"slug":26,"color":27,"icon":28},[173],{"id":24,"name":25,"slug":26,"color":27,"icon":28},"\u002Fblog\u002Fcovers\u002Fpostgresql-haute-disponibilite-patroni-vps-poster.svg",1794270321793]