1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/opengauss-openGauss-server

Клонировать/Скачать
README.en.md 41 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 30.06.2025 03:45 f18ff2f

openGauss Logo

  • [Что такое openGauss?](#Что такое openGauss?)
  • Установка
    • [Создание конфигурационного файла](#Создание конфигурационного файла)
    • [Инициализация окружения установки](#Инициализация окружения установки)
  • [Выполнение установки](#Выполнение установки) [Удаление openGauss](#Удаление openGauss)
  • Компиляция
    • Обзор
    • [Требования к ОС и программному обеспечению](#Требования к ОС и программному обеспечению)
    • [Загрузка openGauss](#Загрузка openGauss)
    • [Компиляция стороннего программного обеспечения](#Компиляция стороннего программного обеспечения)
    • [Компиляция с помощью build.sh](#Компиляция с помощью build.sh)
    • [Компиляция с помощью команды](#Компиляция с помощью команды)
    • [Компиляция установочного пакета](#Компиляция установочного пакета)
  • [Быстрый старт](#Быстрый старт)
  • Документация
  • Сообщество
  • Вклад
  • [Примечания к выпуску](#Примечания к выпуску)
  • Лицензия

Что такое openGauss?

openGauss — это открытая система управления реляционными базами данных. Она обладает высокой производительностью на многоядерных процессорах, полной безопасностью на всех этапах, интеллектуальным управлением и поддержкой предприятий. openGauss интегрирует многолетний опыт Huawei в области баз данных, оптимизируя архитектуру, транзакции, хранилище, оптимизатор и архитектуру ARM. В то же время, openGauss как глобальное открытое сообщество баз данных стремится продвигать развитие и обогащение экосистемы программного и аппаратного обеспечения для баз данных.

opengauss Architecture

Высокая производительность

openGauss преодолевает барьер многоядерных процессоров, достигая 1,5 миллиона TPMC на двухпроцессорной системе Kunpeng с 128 ядрами.

Разделение

Ключевые структуры данных, общие для внутренних потоков, разделяются на различные разделы для уменьшения конфликтов доступа к блокировкам. Например, CLOG использует разделение для решения проблемы бутылочного горлышка ClogControlLock.

Структура NUMA

Выделение ключевых структур данных помогает уменьшить межпроцессорный доступ. Глобальный массив PGPROC разделяется на несколько частей в зависимости от количества узлов NUMA, решая проблему бутылочного горлышка ProcArrayLock.

Привязка ядер

Привязка прерываний сетевого интерфейса к различным ядрам и привязка ядер к различным фоновым потокам предотвращает нестабильность производительности из-за миграции потоков между ядрами.

Оптимизация ARM

Оптимизация атомарных операций на основе инструкций LSE платформы ARM, обеспечивающая эффективную работу критических секций.

Обход SQL

Оптимизация процесса выполнения SQL через обход SQL, снижающая нагрузку на процессор при выполнении.

Высокая надежность

При нормальной нагрузке RTO составляет менее 10 секунд, что снижает время простоя службы из-за отказа узла.

Параллельное восстановление

При передаче Xlog на резервный узел резервный узел записывает Xlog на носитель. Одновременно Xlog отправляется в поток диспетчера восстановления redo. Диспетчер отправляет Xlog в несколько параллельных потоков восстановления для воспроизведения. Это гарантирует, что скорость воспроизведения redo резервного узла соответствует скорости генерации основного узла. Резервный узел готов к работе в реальном времени и может быть немедленно повышен до основного.

MOT Engine (бета-версия)

Хранилище таблиц с оптимизацией памяти (MOT) — это транзакционное хранилище строк, оптимизированное для многоядерных систем и больших объемов памяти, обеспечивающее экстремальную производительность OLTP и высокую эффективность использования ресурсов. С данными и индексами, полностью хранящимися в памяти, NUMA-ориентированной архитектурой, алгоритмами, исключающими конфликты блокировок и захватов, и нативной компиляцией запросов (JIT), MOT обеспечивает низкую задержку доступа к данным и более эффективное выполнение транзакций. Подробнее см. в документации MOT Engine.

Безопасность

openGauss поддерживает управление учетными записями, аутентификацию учетных записей, блокировку учетных записей, проверку сложности паролей, управление и проверку прав доступа, шифрование передачи данных и аудит операций, обеспечивая безопасность данных службы.

Легкость управления и обслуживания

openGauss интегрирует алгоритмы ИИ в базы данных, снижая нагрузку на обслуживание баз данных.

  • Прогнозирование SQL

openGauss поддерживает прогнозирование времени выполнения SQL на основе собранных исторических данных производительности.

  • Диагностика SQL

openGauss поддерживает диагностику выполнения SQL-запросов, выявляя медленные запросы заранее.

  • Автоматическая настройка параметров

openGauss поддерживает автоматическую настройку параметров базы данных, снижая затраты времени и усилий на их настройку.

Установка

Создание конфигурационного файла

Перед установкой openGauss необходимо создать конфигурационный файл. Конфигурационный файл в формате XML содержит информацию о сервере, где будет развернут openGauss, пути установки, IP-адресе и номере порта. Этот файл используется для руководства развертыванием openGauss. Необходимо настроить конфигурационный файл в соответствии с фактическими требованиями развертывания.

Ниже описано, как создать XML-конфигурационный файл на основе решения с одним основным узлом и одним резервным узлом. Информация в жирном шрифте является только примером. Вы можете заменить ее по необходимости. Каждая строка информации закомментирована.

<?xml version="1.0" encoding="utf-8"?>
<ROOT>
<!-- Общая информация -->
  <CLUSTER>
  <!-- Имя базы данных -->
    <PARAM name="clusterName" value="Cluster_template" />
	<!-- Имя узла базы данных (hostname) -->
    <PARAM name="nodeNames" value="node1_hostname,node2_hostname"/>
	<!-- Путь установки базы данных -->
    <PARAM name="gaussdbAppPath" value="/opt/huawei/install/app" />
	<!-- Директория логов -->
    <PARAM name="gaussdbLogPath" value="/var/log/omm" />
	<!-- Директория временных файлов -->
    <PARAM name="tmpMppdbPath" value="/opt/huawei/tmp"/>
	<!-- Директория инструментов базы данных -->
    <PARAM name="gaussdbToolPath" value="/opt/huawei/install/om" />
	<!-- Директория core-файлов базы данных -->
    <PARAM name="corePath" value="/opt/huawei/corefile"/>
	<!-- IP-адреса узлов, соответствующие именам узлов соответственно -->
    <PARAM name="backIp1s" value="192.168.0.1,192.168.0.2"/>
  </CLUSTER>
<!-- Информация о развертывании узлов на каждом сервере -->
  <DEVICELIST>
  <!-- Информация о развертывании узла node1 -->
    <DEVICE sn="node1_hostname">
	  <!-- Имя хоста node1 -->
      <PARAM name="name" value="node1_hostname"/>
	  <!-- AZ, где находится node1, и приоритет AZ -->
      <PARAM name="azName" value="AZ1"/>
      <PARAM name="azPriority" value="1"/>
	  <!-- IP-адрес node1. Если на сервере доступен только один сетевой интерфейс, установите backIP1 и sshIP1 на один и тот же IP-адрес. -->
      <PARAM name="backIp1" value="192.168.0.1"/>
      <PARAM name="sshIp1" value="192.168.0.1"/>
      <!--DBnode-->
      <PARAM name="dataNum" value="1"/>
	  <!-- Номер порта узла базы данных -->
      <PARAM name="dataPortBase" value="15400"/>
	  <!-- Директория данных на основном узле базы данных и директории данных резервных узлов -->
      <PARAM name="dataNode1" value="/opt/huawei/install/data/dn,node2_hostname,/opt/huawei/install/data/dn"/>
	  <!-- Количество узлов, для которых установлен режим синхронизации на узле базы данных -->
      <PARAM name="dataNode1_syncNum" value="0"/>
    </DEVICE>
  <!-- Информация о развертывании узла node2 -->
    <DEVICE sn="node2_hostname">
	  <!-- Имя хоста node2 -->
      <PARAM name="name" value="node2_hostname"/>
	  <!-- AZ, где находится node2, и приоритет AZ -->
      <PARAM name="azName" value="AZ1"/>
      <PARAM name="azPriority" value="1"/>
	  <!-- IP-адрес node2. Если на сервере доступен только один сетевой интерфейс, установите backIP1 и sshIP1 на один и тот же IP-адрес. -->
      <PARAM name="backIp1" value="192.168.0.2"/>
      <PARAM name="sshIp1" value="192.168.0.2"/>
    </DEVICE>
  </DEVICELIST>
</ROOT>

Инициализация окружения установки

После создания конфигурационного файла openGauss необходимо запустить скрипт gs_preinstall для подготовки учетной записи и окружения, чтобы можно было выполнять операции установки и управления openGauss с минимальными правами доступа, обеспечивая безопасность системы.

Предупреждения

  • Необходимо проверить права доступа верхнего уровня директорий, чтобы убедиться, что пользователь имеет права чтения, записи и выполнения для директории установочного пакета и конфигурационного файла.
  • Соответствие между каждым хостнеймом и IP-адресом в XML-конфигурационном файле должно быть правильным.
  • Только пользователь root имеет право запускать команду gs_preinstall.

Процедура

  1. Войдите в любой хост, где будет установлен openGauss, как пользователь root и создайте директорию для хранения установочного пакета по плану.

    mkdir -p /opt/software/openGauss
    chmod 755 -R /opt/software

    ПРИМЕЧАНИЕ:

    • Не создавайте директорию в домашней директории или поддиректории любого пользователя openGauss, так как у вас может не быть прав доступа к таким директориям.
    • Пользователь openGauss должен иметь права чтения и записи в директории /opt/software/openGauss.
  2. В качестве примера используется релизный пакет. Загрузите установочный пакет openGauss_x.x.x_PACKAGES_RELEASE.tar.gz и конфигурационный файл clusterconfig.xml в директорию, созданную на предыдущем шаге.

  3. Перейдите в директорию для хранения загруженного программного обеспечения и распакуйте пакет.

    cd /opt/software/openGauss
    tar -zxvf openGauss_x.x.x_PACKAGES_RELEASE.tar.gz
  4. Распакуйте пакет openGauss-x.x.x-openEULER-64bit.tar.gz.

    tar -zxvf openGauss-x.x.x-openEULER-64bit.tar.gz

    После распаковки установочного пакета автоматически создается поддиректория script в /opt/software/openGauss. В поддиректории script создаются скрипты инструментов OM, такие как gs_preinstall.

  5. Перейдите в директорию для хранения скриптов инструментов.

    cd /opt/software/openGauss/script
  6. Чтобы гарантировать правильную версию OpenSSL, загрузите библиотеку lib из установочного пакета перед предустановкой. Выполните следующую команду. {packagePath} указывает путь к директории с установочным пакетом. В этом примере путь — /opt/software/openGauss.

    export LD_LIBRARY_PATH={packagePath}/script/gspylib/clib:$LD_LIBRARY_PATH
  7. Чтобы гарантировать успешную установку, проверьте совпадение значений hostname и /etc/hostname. Во время предустановки проверяется имя хоста.

  8. Выполните gs_preinstall для настройки окружения установки. Если используется общее окружение, добавьте параметр --sep-env-file=ENVFILE для разделения переменных окружения, чтобы избежать взаимного влияния с другими пользователями. Путь к файлу разделения переменных окружения указывается пользователем. Выполните gs_preinstall в интерактивном режиме. Во время выполнения автоматически устанавливается взаимное доверие между пользователями root и между пользователями кластера openGauss.

    ./gs_preinstall -U omm -G dbgrp -X /opt/software/ openGauss/clusterconfig.xml

    omm — это администратор базы данных (также пользователь ОС, запускающий openGauss), dbgrp — это имя группы ОС пользователя, запускающего openGauss, а /opt/software/ openGauss/clusterconfig.xml — это путь к конфигурационному файлу openGauss. Во время выполнения необходимо подтвердить установку взаимного доверия по запросу и ввести пароль пользователя root или пользователя openGauss.

Выполнение установки

После подготовки окружения установки openGauss путем выполнения предустановочного скрипта разверните openGauss в соответствии с процессом установки. Предварительные условия

  • Вы успешно выполнили скрипт gs_preinstall.
  • Все серверные ОС и сети работают корректно.
  • Вы проверили, что параметр locale для каждого сервера установлен на одно и то же значение.

Процедура

  1. (Необязательно) Проверьте наличие установочного пакета и конфигурационного файла openGauss в запланированных директориях. Если таких пакета или файла нет, выполните предустановку заново.

  2. Войдите в любой хост openGauss и переключитесь на пользователя omm.

    su - omm

    ПРИМЕЧАНИЕ:

    • omm указывает пользователя, заданного параметром -U в скрипте gs_preinstall.
    • Необходимо выполнять скрипт gs_install как пользователь omm, заданный в скрипте gs_preinstall. В противном случае будет возникать ошибка выполнения.
  3. Используйте gs_install для установки openGauss. Если openGauss установлен в режиме разделения переменных окружения, выполните команду source для получения файла разделения переменных окружения ENVFILE.

    gs_install -X /opt/software/ openGauss/clusterconfig.xml

    Пароль должен соответствовать следующим требованиям сложности:

    • Содержать не менее восьми символов.
    • Не совпадать с именем пользователя, текущим паролем (ALTER) или текущим паролем в обратном порядке.
    • Содержать не менее трех из следующих: заглавные буквы (A-Z), строчные буквы (a-z), цифры (0-9) и другие символы (ограничено ~!@#$%^&*()-_=+|[{}];:,<.>/?).
  4. После успешной установки вручную удалите доверие между пользователями root на хосте, то есть удалите файл взаимного доверия на каждом узле базы данных openGauss.

    rm –rf ~/.ssh

Удаление openGauss

Процесс удаления openGauss включает удаление самого openGauss и очистку окружения сервера openGauss.

Выполнение удаления

openGauss предоставляет скрипт для удаления, который помогает пользователям удалить openGauss.

Процедура

  1. Войдите как пользователь ОС omm на хост, где находится CN.

  2. Выполните скрипт gs_uninstall для удаления кластера базы данных.

    gs_uninstall --delete-data

    Альтернативно, выполните удаление на каждом узле openGauss.

    gs_uninstall --delete-data -L
Удаление конфигураций openGauss

После удаления openGauss выполните скрипт gs_postuninstall для удаления конфигураций со всех серверов openGauss, если вы не планируете повторно развернуть openGauss с использованием этих конфигураций. Эти конфигурации были созданы скриптом gs_preinstall. Предварительные условия

  • Задача удаления openGauss успешно выполнена.
  • Пользователь root является доверенным и доступен.
  • Только пользователь root имеет право запускать команду gs_postuninstall.

Процедура

  1. Войдите на сервер openGauss как пользователь root.

  2. Выполните команду ssh Hostname для проверки успешного установления взаимного доверия. Затем введите exit.

    plat1:~ # ssh plat2 
    Last login: Tue Jan  5 10:28:18 2016 from plat1 
    plat2:~ # exit 
    logout 
    Connection to plat2 closed. 
    plat1:~ #
  3. Перейдите по следующему пути:

    cd /opt/software/openGauss/script
  4. Выполните команду gs_postuninstall для очистки окружения. Если openGauss установлен в режиме разделения переменных окружения, выполните команду source для получения файла разделения переменных окружения ENVFILE.

    ./gs_postuninstall -U omm -X /opt/software/openGauss/clusterconfig.xml --delete-user --delete-group

    Альтернативно, локально используйте инструмент gs_postuninstall для очистки каждого узла openGauss.

    ./gs_postuninstall -U omm -X /opt/software/openGauss/clusterconfig.xml --delete-user --delete-group -L

    omm — это имя пользователя ОС, запускающего openGauss, а путь к конфигурационному файлу openGauss — /opt/software/openGauss/clusterconfig.xml. Если кластер установлен в режиме разделения переменных окружения, удалите параметр разделения переменных окружения ENV, полученный при выполнении команды source.

    unset MPPDB_ENV_SEPARATE_PATH
  5. Удалите взаимное доверие между пользователями root на каждом узле базы данных openGauss.

Компиляция

Обзор

Для компиляции openGauss вам потребуются два компонента: openGauss-server и binarylibs.

  • openGauss-server: основной код openGauss. Его можно получить из открытого сообщества.

  • binarylibs: стороннее открытое программное обеспечение, от которого зависит openGauss. Его можно получить путем компиляции кода openGauss-third_party или загрузить из открытого сообщества, где мы уже скомпилировали его и загрузили его копию. Первый метод будет рассмотрен в следующей главе.

Перед компиляцией openGauss проверьте требования к ОС и программному обеспечению.

Вы можете скомпилировать openGauss с помощью build.sh — однонажатийного шелл-инструмента, который мы рассмотрим позже, или с помощью команды. Также build.sh создает установочный пакет.

Требования к ОС и программному обеспечению

Поддерживаются следующие ОС:

  • CentOS 7.6 (архитектура x86)

  • openEuler-20.03-LTS (архитектура aarch64)

  • openEuler-20.03-LTS (архитектура x86_64)

  • openEuler-22.03-LTS (архитектура aarch64)

  • openEuler-22.03-LTS (архитектура x86_64)

  • openEuler-24.03-LTS (архитектура aarch64)

  • openEuler-24.03-LTS (архитектура x86_64)

В следующей таблице перечислены требования к программному обеспечению для компиляции openGauss.

Рекомендуется использовать стандартные пакеты зависимого программного обеспечения из перечисленных ОС или источников установочных дисков CD-ROM. Если указанное программное обеспечение отсутствует, обратитесь к рекомендуемым версиям программного обеспечения.

Требования к зависимому программному обеспечению следующие:

Программное обеспечение Рекомендуемая версия
libaio-devel 0.3.109-13
flex 2.5.31 или новее
bison 2.7-4
ncurses-devel 5.9-13.20130511
glibc-devel 2.17-111
patch 2.7.1-10
lsb_release 4.1

Загрузка openGauss

Вы можете загрузить openGauss-server и openGauss-third_party из открытого сообщества.

https://opengauss.org/zh/

С сайта ниже вы можете получить binarylibs, которые мы уже скомпилировали. После загрузки распакуйте его и переименуйте в binarylibs.

https://opengauss.obs.cn-south-1.myhuaweicloud.com/2.1.0/openGauss-third_party_binarylibs.tar.gz

Теперь мы завершили код openGauss, например, мы храним его в следующих директориях.

  • /sda/openGauss-server
  • /sda/binarylibs
  • /sda/openGauss-third_party### Компиляция стороннего программного обеспечения

Перед компиляцией openGauss скомпилируйте и соберите открытые исходные тексты и стороннее программное обеспечение, от которого зависит openGauss. Эти открытые исходные тексты и стороннее программное обеспечение хранятся в репозитории кода openGauss-third_party и обычно требуется собирать их только один раз. Если открытые исходные тексты обновлены, пересоберите программное обеспечение.

Вы также можете напрямую получить выходной файл компиляции открытых исходных текстов из репозитория binarylibs.

Если вы хотите скомпилировать стороннее программное обеспечение самостоятельно, перейдите в репозиторий openGauss-third_party для получения подробностей.

После выполнения предшествующего скрипта результат компиляции и сборки сохраняется в директории binarylibs, находящейся на том же уровне с openGauss-third_party. Эти файлы будут использоваться во время компиляции openGauss-server.

Компиляция с помощью build.sh

build.sh в openGauss-server — это важный скрипт инструмент во время компиляции. Он интегрирует функции установки программного обеспечения и компиляции кода для быстрой компиляции и упаковки кода.

В следующей таблице описаны параметры.

Параметр Значение по умолчанию Параметр Описание
-h Не используйте этот параметр. - Меню справки
-m release [debug | release | memcheck] Выбор целевой версии
-3rd ${Code directory}/binarylibs [binarylibs path] Указание пути к binarylibs. Путь должен быть абсолютным путем
-pkg Не используйте этот параметр. - Сжатие результата компиляции кода в установочный пакет

ВНИМАНИЕ:

  1. -m [debug | release | memcheck] указывает три целевые версии:
    • release: указывает генерацию двоичной программы версии release. При компиляции этой версии используется параметр высокой оптимизации GCC для удаления отладочного кода ядра системы. Этот параметр обычно используется в среде генерации или тестирования производительности.
    • debug: указывает генерацию двоичной программы версии debug. При компиляции этой версии добавляется функция отладки кода ядра системы, что обычно используется в среде самотестирования разработчиков.
    • memcheck: указывает генерацию двоичной программы версии memcheck. При компиляции этой версии добавляется функция ASAN на основе версии debug для локализации проблем с памятью.
  2. -3rd [binarylibs path] — это путь к binarylibs. По умолчанию binarylibs существует в текущей директории с кодом. Если binarylibs перемещен в openGauss-server или создан символическая ссылка на binarylibs в openGauss-server, вам не нужно указывать этот параметр. Однако если вы сделаете это, обратите внимание, что файл легко может быть удален командой git clean.
  3. Каждый параметр этого скрипта имеет значение по умолчанию; количество параметров мало и зависимости просты; поэтому этот скрипт легко использовать; если требуемое значение отличается от значения по умолчанию, задайте этот параметр согласно фактическим требованиям.

Теперь вы знаете использование build.sh; поэтому вы можете скомпилировать openGauss-server одной командой с помощью build.sh.

[user@linux openGauss-server]$ sh build.sh -m [debug | release | memcheck] -3rd [binarylibs path]

Например:

[user@linux openGauss-server]$ sh build.sh       # Компиляция версии release openGauss; binarylibs или его символическая ссылка должны существовать в директории с кодом; в противном случае операция завершится неудачей.
[user@linux openGauss-server]$ sh build.sh -m debug -3rd /sda/binarylibs    # Компиляция версии debug openGauss с использованием binarylibs из /sda/

Путь установки программного обеспечения после компиляции — /sda/openGauss-server/dest.

Скомпилированные двоичные файлы хранятся в /sda/openGauss-server/dest/bin.

Журнал компиляции: make_compile.log

Компиляция с помощью команды

  1. Выполните следующий скрипт для получения версии системы:

    [user@linux openGauss-server]$ sh src/get_PlatForm_str.sh

    ВНИМАНИЕ:

    • Вывод команды указывает ОСы, поддерживаемые openGauss; поддерживаемые ОС — centos7.6_x86_64 и openeuler_aarch64.
    • Если отображается Failed или другая версия, то текущая операционная система не поддерживается openGauss.
  2. Настройте переменные окружения; добавьте ____ на основе местоположения загрузки кода; замените *** результатом из предыдущего шага.

    export CODE_BASE=________     # Путь к файлу openGauss-server
    export BINARYLIBS=________    # Путь к файлу binarylibs
    export GAUSSHOME=$CODE_BASE/dest/
    export GCC_PATH=$BINARYLIBS/buildtools/***/gcc7.3/
    export CC=$GCC_PATH/gcc/bin/gcc
    export CXX=$GCC_PATH/gcc/bin/g++
    export LD_LIBRARY_PATH=$GAUSSHOME/lib:$GCC_PATH/gcc/lib64:$GCC_PATH/isl/lib:$GCC_PATH/mpc/lib/:$GCC_PATH/mpfr/lib/:$GCC_PATH/gmp/lib/:$LD_LIBRARY_PATH
    export PATH=$GAUSSHOME/bin:$GCC_PATH/gcc/bin:$PATH
    
  3. Выберите версию и настройте ее.

    debug версия:

    ./configure --gcc-version=7.3.0 CC=g++ CFLAGS='-O0' --prefix=$GAUSSHOME --3rd=$BINARYLIBS --enable-debug --enable-cassert --enable-thread-safety --without-readline --without-zlib

    release версия:

    ./configure --gcc-version=7.3.0 CC=g++ CFLAGS="-O2 -g3" --prefix=$GAUSSHOME --3rd=$BINARYLIBS --enable-thread-safety --without-readline --without-zlib

    memcheck версия:

    ./configure --gcc-version=7.3.0 CC=g++ CFLAGS='-O0' --prefix=$GAUSSHOME --3rd=$BINARYLIBS --enable-debug --enable-cassert --enable-thread-safety --without-readline --without-zlib --enable-memory-check

    ВНИМАНИЕ:

    1. [debug | release | memcheck] указывает три целевые версии.
    2. На платформе ARM необходимо добавить -D__USE_NUMA к CFLAGS.
    3. На платформе ARMv8.1 или более новой (например, Kunpeng 920) необходимо добавить -D__ARM_LSE к CFLAGS.
    4. Если binarylibs перемещен в openGauss-server или создан символическая ссылка на binarylibs в openGauss-server, вам не нужно указывать параметр --3rd; однако если вы сделаете это, обратите внимание, что файл легко может быть удален командой git clean.
    5. Для сборки с mysql_fdw добавьте --enable-mysql-fdw при конфигурировании; перед сборкой mysql_fdw необходим клиентская библиотека C MariaDB.
    6. Для сборки с oracle_fdw добавьте --enable-oracle-fdw при конфигурировании; перед сборкой oracle_fdw необходим клиентская библиотека C Oracle.
  4. Выполните следующие команды для компиляции openGauss:

    [user@linux openGauss-server]$ make -sj
    [user@linux openGauss-server]$ make install -sj
  5. Если отображается следующая информация, компиляция и установка прошли успешно:

    Установка openGauss завершена.

    Путь установки программного обеспечения после компиляции — $GAUSSHOME.

    Скомпилированные двоичные файлы хранятся в $GAUSSHOME/bin.

Компиляция установочного пакета

Прочитайте главу Компиляция с помощью build.sh, чтобы понять использование build.sh и как компилировать openGauss с помощью этого скрипта.

Теперь вы можете скомпилировать установочный пакет просто добавив параметр -pkg.

[user@linux openGauss-server]$ sh build.sh -m [debug | release | memcheck] -3rd [binarylibs path] -pkg

Например:

[user@linux openGauss-server]$ sh build.sh -pkg      # Компиляция установочного пакета версии release; binarylibs или его символическая ссылка должны существовать в директории с кодом; в противном случае операция завершится неудачей.
[user@linux openGauss-server]$ sh build.sh -m debug -3rd /sda/binarylibs -pkg    # Компиляция установочного пакета версии debug с использованием binarylibs из /sda/

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/opengauss-openGauss-server.git
git@api.gitlife.ru:oschina-mirror/opengauss-openGauss-server.git
oschina-mirror
opengauss-openGauss-server
opengauss-openGauss-server
master