Тестирование PXF
This commit is contained in:
Executable
+38
@@ -0,0 +1,38 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Простой init-скрипт для настройки PXF:
|
||||
# - кладёт JDBC-драйвер PostgreSQL в каталог PXF;
|
||||
# - копирует jdbc-site.xml для сервера bookings-db;
|
||||
# - выполняет pxf cluster sync.
|
||||
# Скрипт выполняется только при первой инициализации Greenplum (пустой /data).
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
GREENPLUM_USER=${GREENPLUM_USER:-gpadmin}
|
||||
PXF_BASE_DEFAULT="${GREENPLUM_DATA_DIRECTORY:-/data}/pxf"
|
||||
|
||||
# Пробуем подтянуть PXF_BASE из .bashrc пользователя Greenplum
|
||||
if [ -f "/home/${GREENPLUM_USER}/.bashrc" ]; then
|
||||
# shellcheck disable=SC1090
|
||||
source "/home/${GREENPLUM_USER}/.bashrc"
|
||||
fi
|
||||
|
||||
PXF_BASE=${PXF_BASE:-$PXF_BASE_DEFAULT}
|
||||
|
||||
mkdir -p "${PXF_BASE}/lib" "${PXF_BASE}/servers/bookings-db"
|
||||
|
||||
# Копируем JAR-драйвер, если он ещё не установлен
|
||||
if [ -f /pxf-local/postgresql-42.7.3.jar ] && [ ! -f "${PXF_BASE}/lib/postgresql-jdbc.jar" ]; then
|
||||
cp /pxf-local/postgresql-42.7.3.jar "${PXF_BASE}/lib/postgresql-jdbc.jar"
|
||||
fi
|
||||
|
||||
# Копируем jdbc-site.xml для сервера bookings-db, если его нет
|
||||
if [ -f /pxf-local/servers/bookings-db/jdbc-site.xml ] && [ ! -f "${PXF_BASE}/servers/bookings-db/jdbc-site.xml" ]; then
|
||||
cp /pxf-local/servers/bookings-db/jdbc-site.xml "${PXF_BASE}/servers/bookings-db/jdbc-site.xml"
|
||||
fi
|
||||
|
||||
# Синхронизируем конфигурацию PXF (на всякий случай)
|
||||
if command -v pxf >/dev/null 2>&1; then
|
||||
pxf cluster sync || true
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user