يمكن لبرنامج LibreOffice Base العمل كواجهة أمامية لقاعدة بيانات PostgreSQL موجودة، مما يتيح لك استعراض الجداول، وإنشاء الاستعلامات، وتصميم النماذج والتقارير دون الحاجة إلى نقل البيانات إلى قاعدة بيانات Base مضمنة. بالنسبة لمعظم عمليات التثبيت الحالية، يُعد الاتصال المباشر بـ PostgreSQL من LibreOffice الخيار الأمثل. ولا يزال JDBC مفيدًا كحل بديل عندما تتطلب بيئتك برنامج تشغيل Java أو عندما يكون الموصل المباشر غير متاح.
سيناريو توضيحي: تخيل فريق عمليات صغير يُدعى "خدمات نورث ويند الميدانية". يحتوي خادم PostgreSQL الخاص به على قاعدة بيانات باسم sales_ops. تعمل قاعدة البيانات على db.example.internal، وتستمع على المنفذ 5432، ولدى الفريق دور للقراءة فقط باسم analyst_ro. هذا المثال افتراضي ويُستخدم فقط لتوضيح كيفية ترابط قرارات الإعداد.
تتبع الخطوات التالية دليل LibreOffice الحالي لاتصالات PostgreSQL وJDBC، بالإضافة إلى وثائق خادم PostgreSQL الحالية. اعتبارًا من أكتوبر 2026، يُدرج LibreOffice الإصدار 26.8.0 كأحدث فرع، والإصدار 26.2.6 كفرع سابق مستقر؛ قد تختلف التسميات أو مواضع الأزرار قليلاً باختلاف نظام التشغيل والإصدار. راجع ملاحظات إصدار LibreOffice الرسمية ودليل اتصال LibreOffice PostgreSQL للاطلاع على الصياغة الحالية.
قبل البدء: اجمع قيم الاتصال الأربعة
تحتاج عادةً إلى أربع معلومات من مسؤول PostgreSQL:
- اسم قاعدة البيانات ، مثل
sales_ops.
- اسم الخادم أو عنوان IP ، مثل
db.example.internal.
- المنفذ ، عادةً
5432ما لم يقم المسؤول بتغييره.
- بيانات تسجيل الدخول إلى PostgreSQL وطريقة المصادقة أو كلمة المرور الخاصة بها.
لا تفترض أن الخادم الذي يقبل اتصالات PostgreSQL المحلية سيقبل أيضًا اتصال LibreOffice من جهاز كمبيوتر آخر. listen_addressesيتحكم PostgreSQL في واجهات الشبكة التي تقبل اتصالات TCP/IP، بينما pg_hba.confيتحكم في عناوين العملاء وقواعد البيانات والمستخدمين وطرق المصادقة المسموح بها. يوثق PostgreSQL كلا السلوكين في إعدادات الاتصال ووثائق مصادقة العميل .
الخطوة 1: افتح Base واختر قاعدة بيانات PostgreSQL موجودة
ابدأ تشغيل LibreOffice Base وأنشئ مستند قاعدة بيانات Base جديدًا. في معالج قواعد البيانات، اختر " الاتصال بقاعدة بيانات موجودة" ، ثم حدد PostgreSQL كنوع قاعدة البيانات. يدعم معالج قواعد البيانات في LibreOffice بشكل صريح ربط مستند Base بقاعدة بيانات موجودة بدلاً من إنشاء قاعدة بيانات مضمنة جديدة.
التعليق: تم ضبط معالج قاعدة البيانات للاتصال بقاعدة بيانات PostgreSQL موجودة بدلاً من إنشاء قاعدة بيانات مضمنة جديدة.
بالنسبة لمثال خدمات نورث ويند الميدانية، هذا يعني أن قاعدة البيانات ستخزن معلومات الاتصال وكائنات قاعدة البيانات مثل الاستعلامات والنماذج والتقارير، بينما تظل جداول الأعمال الفعلية في PostgreSQL.
الخطوة الثانية: أدخل اسم قاعدة البيانات والخادم والمنفذ
في صفحة اتصال PostgreSQL، أدخل اسم قاعدة البيانات والخادم والمنفذ الذي يوفره لك مسؤول النظام. في المثال الحالي، هذه القيم هي sales_ops: db.example.internalو و 5432.
التعليق: صفحة اتصال PostgreSQL المباشرة مع اسم قاعدة البيانات والخادم ومنفذ PostgreSQL الافتراضي كمثال.
يُتيح LibreOffice أيضًا استخدام سلسلة اتصال خاصة بـ PostgreSQL بدلًا من ملء الحقول الأساسية. يُظهر الدليل الرسمي نماذج مثل `<connection>` dbname=MyDatabase host=myHost port=5432و` postgresql://myHost:port/MyDatabase<connection>`. قد يكون هذا مفيدًا عندما يُزوّدك مسؤول النظام بمعلمات إضافية خاصة ببرنامج التشغيل. يُشير LibreOffice إلى أنه يتم تجاهل قيم user=`<connection>` و` password=<connection>` في سلسلة الاتصال هذه، ويتم طلب المصادقة عند الاتصال.
الخطوة 3: أدخل مستخدم PostgreSQL واختبر الاتصال
أدخل دور PostgreSQL المطلوب استخدامه من Base. عادةً ما يكون حساب القراءة فقط أو حساب ذو أقل صلاحيات نقطة انطلاق أكثر أمانًا من مالك قاعدة البيانات أو المستخدم المتميز عند إعداد التقارير أو التحليل. في المثال، الدور هو analyst_ro.
التعليق: تم تكوين المصادقة باستخدام دور القراءة فقط كمثال، ويشير اختبار الاتصال إلى النجاح.
استخدم اختبار الاتصال قبل حفظ مستند Base. يؤكد نجاح الاختبار قدرة Base على الوصول إلى الخادم والمصادقة باستخدام الدور المُحدد. مع ذلك، لا يُثبت هذا الاختبار أن الدور لديه صلاحية قراءة جميع الجداول التي تتوقع استخدامها، لذا لا يزال من الضروري التحقق من رؤية الجداول بعد فتح الاتصال.
في حال فشل الاختبار، احتفظ بالرسالة كما هي. أخطاء مثل no pg_hba.conf entryو password authentication failedو user does not existو و لها أسباب مختلفة. تشرح صفحة استكشاف أخطاء المصادقةdatabase does not exist في PostgreSQL هذه الرسائل، وتوصي بمراجعة سجل الخادم عندما لا يكون خطأ جانب العميل كافيًا.
الخطوة الرابعة: حفظ مستند قاعدة البيانات الأساسية
بعد اجتياز الاختبار، اختر ما إذا كنت تريد تسجيل قاعدة البيانات في LibreOffice وما إذا كنت تريد فتحها فورًا للتعديل. يُفيد التسجيل عندما تحتاج مكونات LibreOffice الأخرى إلى الإشارة إلى مصدر البيانات بالاسم. ثم انقر فوق " إنهاء" واحفظ مستند قاعدة البيانات كملف .odb.
التعليق: يمكن لصفحة المعالج النهائية تسجيل مصدر بيانات PostgreSQL وفتح مستند Base المحفوظ للتحرير.
هذا .odbالملف ليس نسخة من قاعدة بيانات PostgreSQL في هذا الإعداد. تعامل معه كمستند قاعدة بيانات من جانب LibreOffice يحتوي على تعريف الاتصال وكائنات Base. إذا نقلت الملف .odbإلى جهاز كمبيوتر آخر، فسيظل هذا الجهاز بحاجة إلى الوصول إلى الشبكة، وبيانات اعتماد صالحة، وأي برامج تشغيل أو شهادات مطلوبة.
الخطوة 5: التأكد من ظهور الجداول المتوقعة
افتح مستند Base المحفوظ وحدد الجداول . ستظهر لك الكائنات التي يُسمح لدور PostgreSQL بالوصول إليها. في المثال الافتراضي، قد تتضمن الجداول المتوقعة ما يلي customers: ordersو productsو و order_items.
التعليق: تُعد طريقة عرض الجداول الأساسية أول فحص عملي للتأكد من أن دور PostgreSQL المتصل يمكنه رؤية كائنات المخطط المتوقعة.
إذا نجح الاتصال ولكن الجداول مفقودة، فعادةً لا تكون المشكلة متعلقة بالشبكة. تحقق من صلاحيات دور PostgreSQL، وإمكانية الوصول إلى المخطط، ومسار البحث عن المخطط. استشر مسؤول قاعدة البيانات بشأن المخططات والكائنات التي يُفترض أن يراها الحساب قبل تغيير الصلاحيات بنفسك.
الخطوة السادسة: تشغيل استعلام صغير للقراءة فقط قبل إنشاء النماذج أو التقارير
قبل إنشاء حل Base أكبر، قم بتشغيل استعلام قراءة فقط بسيط على جدول صغير. على سبيل المثال:
SELECT customer_id, full_name, city
FROM customers
ORDER BY full_name;
التعليق: يُعد استعلام SELECT صغيرًا فحصًا وظيفيًا مفيدًا بعد أن تصبح جداول PostgreSQL مرئية في Base.
يتحقق هذا من أكثر من مجرد اختبار الاتصال الأولي: فهو يتأكد من قدرة Base على تنفيذ استعلامات SQL عبر الاتصال، ومن قدرة الدور على قراءة الكائن المستهدف، ومن إمكانية استخدام الصفوف المُعادة في واجهة استعلام Base. ابدأ SELECTبالعبارات إذا كنت تتحقق من صحة قاعدة بيانات إنتاجية. لا تختبر بإضافة أو تحديث أو حذف سجلات حقيقية إلا إذا كان ذلك جزءًا صريحًا من متطلبات الوصول لديك.
الخطوة 7: تكوين بروتوكول TLS عندما تتطلب سياسة قاعدة البيانات التشفير
بالنسبة لقواعد البيانات البعيدة أو الإنتاجية، اتبع متطلبات بروتوكول أمان طبقة النقل (TLS) الخاصة بمؤسستك بدلاً من افتراض أن الاتصال غير المشفر مقبول. يدعم PostgreSQL اتصالات العميل/الخادم المشفرة عند تفعيل بروتوكول SSL على الخادم، ويمكن للمسؤولين فرض قواعد مضيف خاصة ببروتوكول SSL pg_hba.conf. تجد تفاصيل الإعداد المعتمدة في وثائق SSL/TLS الخاصة بـ PostgreSQL .
يقبل اتصال PostgreSQL المباشر في LibreOffice معلمات اتصال خاصة ببرنامج التشغيل، ولكن ليس بالضرورة أن يتعامل مدير برامج التشغيل في LibreOffice مع جميع معلمات اتصال PostgreSQL. إذا كنت بحاجة إلى التحقق من الشهادة، أو شهادات العميل، أو وضع SSL خاص بسياسة معينة، فتأكد من سلسلة الاتصال الدقيقة مع مسؤول قاعدة البيانات لديك، وراجع وثائق LibreOffice الخاصة بالإصدار المُثبّت لديك. في هذه الحالة، قد يؤدي نسخ سلسلة اتصال إنترنت عامة إلى شعور زائف بالأمان.
التعليق: يشير خطأ المصادقة الذي يذكر ملف pg_hba.conf وحالة SSL إلى سياسة الاتصال من جانب الخادم، وليس مجرد خطأ في كتابة اسم المستند الأساسي.
الخطوة 8: استخدم JDBC فقط عندما تحتاج إلى مسار برنامج تشغيل Java
إذا لم يكن خيار الاتصال المباشر بقاعدة بيانات PostgreSQL متاحًا في بيئتك، أو إذا اعتمد مسؤول النظام بروتوكول JDBC بشكل موحد، فيمكن لقاعدة البيانات Base الاتصال عبر برنامج تشغيل JDBC. يتطلب هذا المسار تثبيت Java وبرنامج التشغيل، لذا يُفضّل اعتباره خيارًا بديلًا وليس شرطًا أساسيًا لكل اتصال بقاعدة بيانات PostgreSQL.
قم بتنزيل برنامج تشغيل PostgreSQL JDBC فقط من موقع pgJDBC الرسمي . تشير وثائق pgJDBC إلى ضرورة وجود ملف JAR الخاص ببرنامج التشغيل ضمن مسار فئات Java. يُرشد دليل JDBC الخاص بـ LibreOffice المستخدمين إلى إضافة مسار برنامج التشغيل من خلال الأدوات > الخيارات > LibreOffice > متقدم > مسار الفئات ، ثم إعادة تشغيل LibreOffice.
التعليق: يتطلب التراجع عن JDBC وجود بيئة تشغيل Java وملف PostgreSQL JDBC JAR في مسار فئة LibreOffice.
بالنسبة لـ PostgreSQL، يوثق pgJDBC عناوين URL بالصيغة التالية jdbc:postgresql://host:port/database: . مع الخادم الافتراضي، ستكون الصيغة كالتالي jdbc:postgresql://db.example.internal:5432/sales_ops: . فئة برنامج تشغيل JDBC لـ PostgreSQL هي org.postgresql.Driver؛ يمكن لتطبيقات Java الحديثة تحميلها من خلال آلية موفر الخدمة في Java عند وجود ملف JAR، على الرغم من أن معالج JDBC في LibreOffice قد يطلب قيمة فئة برنامج التشغيل. راجع دليل إعداد pgJDBC ، ووثائق عنوان URL لاتصال pgJDBC ، ومساعدة JDBC في LibreOffice .
جدول استكشاف الأخطاء وإصلاحها السريع
| الأعراض | الفحص التالي الأكثر فائدة |
| تم رفض الاتصال أو انقضى وقت الانتظار | تأكد من اسم الخادم والمنفذ ومسار جدار الحماية وPostgreSQL listen_addressesوما إذا كان الخادم يستمع بالفعل على تلك الواجهة. |
no pg_hba.conf entry | اطلب من المسؤول التحقق من قاعدة المضيف/قاعدة البيانات/المستخدم المطابقة وما إذا كان الاتصال يجب أن يستخدم SSL. |
| فشلت عملية التحقق من كلمة المرور | تحقق من دور وكلمة مرور PostgreSQL؛ لا تفترض أن اسم حساب نظام التشغيل هو دور قاعدة البيانات. |
| الاتصال يعمل ولكن الجداول مفقودة | تحقق من صلاحيات الدور، ورؤية المخطط، ومسار المخطط/البحث المتوقع. |
| لا يمكن تحميل فئة برنامج تشغيل JDBC | تأكد من وجود ملف pgJDBC JAR في مسار فئة LibreOffice، وأن Java مفعلة، وأن LibreOffice قد أعيد تشغيله. |
| يعمل على جهاز كمبيوتر واحد ولكنه لا يعمل على جهاز كمبيوتر آخر. | قارن إمكانية الوصول إلى نظام أسماء النطاقات/الشبكة، وقواعد عنوان IP الخاص بالعميل pg_hba.conf، والشهادات، وإعدادات Java/JDBC المحلية إن وجدت، وبيانات الاعتماد المحفوظة. |
كيف ينبغي أن يبدو الإعداد الناجح
إن معيار النجاح المفيد ليس مجرد "اجتياز اختبار الاتصال". بالنسبة لمثال Northwind Field Services، يكون الإعداد جاهزًا بالفعل عندما يتم إعادة فتح المستند الأساسي بشكل سليم، analyst_roويمكن للحساب رؤية كائنات PostgreSQL المقصودة فقط، SELECTويعيد استعلام صغير الصفوف المتوقعة، ويلبي الاتصال متطلبات التشفير والمصادقة الخاصة بالمنظمة.
إذا وصلت إلى مرحلة تعمل فيها الاستعلامات الأساسية، بينما تكشف نماذج أو تقارير Base الأكثر تعقيدًا عن قيود متعلقة بنوع البيانات أو الأداء أو برنامج التشغيل، فتوقف عن اعتبار المشكلة مشكلة اتصال. في هذه المرحلة، قارن بين موصل PostgreSQL المباشر وJDBC لحجم العمل المحدد، واختبر الاستعلام أو نوع البيانات ذي الصلة. يجب أن تخدم طريقة الاتصال سياسة قاعدة البيانات وميزات Base التي تستخدمها فعليًا، لا أن تصبح غاية في حد ذاتها.