كيفية تجميع وحدات PostgreSQL
عند استخدام ServBay لتطوير PostgreSQL، قد تحتاج إلى تجميع وتثبيت وحدات PostgreSQL الإضافية لتوسيع وظائف قاعدة البيانات. ستشرح هذه المقالة كيفية تجميع وحدات PostgreSQL في بيئة ServBay، بما في ذلك تجميع وحدتي postgis
و pg_jieba
.
المتطلبات المسبقة
قبل بدء تجميع وحدات PostgreSQL، تأكد من إكمال تهيئة بيئة التجميع. لمزيد من التفاصيل حول كيفية تهيئة بيئة التجميع، يرجى مراجعة الوثيقة استخدام ServBay لإعادة التجميع.
أهمية تحديد إصدار PostgreSQL
يأتي ServBay مع العديد من إصدارات PostgreSQL، وعند استخدام أدوات التجميع، من الضروري تحديد إصدار PostgreSQL الخاص بك والإعدادات ذات الصلة. يعود ذلك إلى أن إصدارات PostgreSQL المختلفة قد تحتوي على إعدادات وتبعية مختلفة، واختيار الإصدار الصحيح يمكن أن يمنع أخطاء التجميع ومشاكل التشغيل.
سنأخذ كمثال PostgreSQL 15
.
تجميع وحدة postgis
وحدة postgis
هي إضافة لـ PostgreSQL تُستخدم للتعامل مع بيانات نظم المعلومات الجغرافية (GIS). الخطوات التالية توضح كيفية تجميع وحدة postgis-3.4.2
:
الخطوة 1: تحميل شفرة المصدر
أولًا، حمل حزمة شفرة المصدر لوحدة postgis-3.4.2
من الموقع الرسمي لـ PostGIS.
wget https://download.osgeo.org/postgis/source/postgis-3.4.2.tar.gz
الخطوة 2: استخراج حزمة المصدر
استخرج حزمة المصدر التي تم تحميلها.
tar zxvf postgis-3.4.2.tar.gz
cd postgis-3.4.2
2
الخطوة 3: إعداد خيارات التجميع
أعد إعداد خيارات التجميع، حدد مسار إعدادات PostgreSQL والمعلمات الأخرى.
./configure --prefix=${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7 --bindir=${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7/bin --datarootdir=${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7/share --with-protobufdir=${SERVBAY_BIN_PATH} --disable-nls --without-raster --without-topology --with-pgconfig=${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7/bin/pg_config CFLAGS="${CFLAGS} -I${SERVBAY_COMMON_INCLUDE_PATH}/libxml2 -I${SERVBAY_COMMON_INCLUDE_PATH}" CXXFLAGS="${CXXFLAGS} -std=c++17 -I${SERVBAY_COMMON_INCLUDE_PATH}/libxml2 -I${SERVBAY_COMMON_INCLUDE_PATH}" LDFLAGS="${LDFLAGS} -L${SERVBAY_COMMON_LIB_PATH} -lxml2 -lz -lpthread -liconv -licui18n -licuuc -licudata -lm"
الخطوة 4: التجميع والتثبيت
قم بتجميع وتثبيت وحدة postgis-3.4.2
.
make -j ${CPU_NUMBER}
make install
2
الخطوة 5: التحقق من تحميل الوحدة
استخدم أداة سطر الأوامر لـ PostgreSQL للتحقق مما إذا كانت وحدة postgis
قد تم تحميلها بنجاح:
${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7/bin/psql -c "CREATE EXTENSION postgis;"
${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7/bin/psql -c "SELECT PostGIS_Version();"
2
إذا تم تحميل الوحدة بنجاح، يجب أن ترى معلومات إصدار PostGIS
.
تجميع وحدة pg_jieba
وحدة pg_jieba
هي إضافة لـ PostgreSQL تُستخدم لتقسيم النصوص الصينية. الخطوات التالية توضح كيفية تجميع وحدة pg_jieba
:
الخطوة 1: الحصول على شفرة المصدر
أولًا، نسخ مستودع شفرة المصدر لوحدة pg_jieba
من GitHub.
git clone https://github.com/jaiminpan/pg_jieba.git
cd pg_jieba
git submodule update --init --recursive
2
3
الخطوة 2: إعداد خيارات التجميع
أعد إعداد خيارات التجميع، حدد مسار إعدادات PostgreSQL والمعلمات الأخرى.
cmake -S . -B builddir -DCMAKE_PREFIX_PATH=${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7 -DCMAKE_OSX_DEPLOYMENT_TARGET=${BUILD_OS_MIN_VERSION} -DCMAKE_OSX_ARCHITECTURES=${BUILD_CPU_ARCH_CMAKE}
الخطوة 3: التجميع والتثبيت
قم بتجميع وتثبيت وحدة pg_jieba
.
cmake --build builddir -j ${CPU_NUMBER}
cmake --install builddir
2
الخطوة 4: التحقق من تحميل الوحدة
استخدم أداة سطر الأوامر لـ PostgreSQL للتحقق مما إذا كانت وحدة pg_jieba
قد تم تحميلها بنجاح:
${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7/bin/psql -c "CREATE EXTENSION pg_jieba;"
${SERVBAY_PACKAGE_FULL_PATH}/postgresql/15/15.7/bin/psql -c "SELECT * FROM pg_available_extensions WHERE name = 'pg_jieba';"
2
إذا تم تحميل الوحدة بنجاح، يجب أن ترى معلومات ذات صلة بوحدة pg_jieba
.
الملخص
من خلال الخطوات المذكورة أعلاه، يمكنك تجميع وتثبيت وحدات PostgreSQL المطلوبة في بيئة ServBay. أثناء عملية التجميع، تأكد من تحديد الإصدار الصحيح لـ PostgreSQL والإعدادات ذات الصلة، لضمان توافق الوحدات مع بيئة قاعدة البيانات الخاصة بك. نأمل أن تساعدك هذه المقالة في استكمال عملية تجميع وحدات PostgreSQL بنجاح.