Spec-Zone.ru › MariaDB

Настройка MariaDB на FreeBSD

Компиляция MariaDB из исходных кодов на FreeBSD относительно проста. При работе с отдельным хостом можно использовать Ports для компиляции определённых или нескольких версий MariaDB. При работе с несколькими хостами можно использовать Poudriere для однократной компиляции MariaDB, а затем распространять её как пакет на несколько хостов FreeBSD.

Использование Ports

Коллекция FreeBSD Ports предоставляет набор Makefiles, которые можно использовать для получения исходного кода, настройки компиляции, установки зависимостей и компиляции программного обеспечения. Это позволяет использовать более новые релизы, чем обычно доступны через менеджеры пакетов, а также включает любые дополнительные функции, которые вас интересуют.

В случае, если вы ранее не использовали Ports на вашей системе, вам необходимо сначала извлечь и распаковать дерево Ports. Это загрузит дерево Ports с FreeBSD и распакует его на вашей системе, поместив различные Makefiles, патчи и т. д. в каталог /usr/ports/.

# portsnap fetch extract

В случае, если вы уже использовали Ports на этой системе, запустите Portsnap ещё раз, чтобы загрузить и установить любые обновления дерева Ports.

# portsnap fetch update

Это гарантирует, что вы используете самую последнюю версию дерева Ports, доступную на вашей системе.

Компиляция MariaDB из Ports

После того, как Portsnap установил или обновил ваше дерево Ports, вы можете перейти в соответствующий каталог и установить MariaDB. Порты для MariaDB находятся в каталоге /usr/ports/databases/.

$ ls /usr/ports/databases | grep mariadb

mariadb-connector-c
mariadb-connector-odbc
mariadb100-client
mariadb100-server
mariadb101-client
mariadb101-server
mariadb102-client
mariadb102-server
mariadb103-client
mariadb103-server
mariadb55-client
mariadb55-server

Обратите внимание, что FreeBSD обрабатывает Сервер и Клиент как отдельные пакеты. Клиент является зависимостью Сервера, поэтому для получения обоих необходимо скомпилировать только Сервер. Он также предоставляет несколько разных версий. Вы можете найти доступные порты на Fresh Ports. Выберите нужную вам версию MariaDB, перейдите в соответствующий каталог. После этого запустите Make для компиляции MariaDB.

# cd /usr/ports/databases/mariadb103-server
# make

Помимо загрузки и компиляции MariaDB, Ports также загружает и компилирует все библиотеки, от которых зависит MariaDB. При компиляции каждого порта откроется окно GUI, где можно выбрать различные параметры компиляции. В случае MariaDB это включает различные движки хранения и конкретные функции, необходимые для вашей сборки.

После завершения компиляции портов, установите MariaDB на вашей системе и очистите каталог, чтобы освободить место на диске.

# make install clean

Это установит FreeBSD на ваш сервер. Теперь вы можете включить, настроить и запустить службу, как обычно, после установки MariaDB из пакета.

Использование Poudriere

Poudriere — это утилита для сборки пакетов FreeBSD. Она позволяет скомпилировать MariaDB из FreeBSD Jail, а затем распространять её как двоичный пакет на другие хосты FreeBSD. Это может быть особенно полезно при развертывании нескольких серверов MariaDB на FreeBSD, например, с Galera Cluster или аналогичными развертываниями.

Компиляция MariaDB

После настройки вашего хоста для использования Jails и Poudriere, инициализируйте jail для сборки пакетов и jail для управления портами.

# poudriere jail -c -j package-builder -v 11.2-RELEASE
# poudriere ports -c -p local-ports

Это создаёт две jail, package-builder и local-ports, которые затем можно использовать для сборки MariaDB. Создайте текстовый файл для определения пакетов, которые вы хотите скомпилировать. Poudriere скомпилирует эти пакеты, а также их зависимости. MariaDB находится по адресу databases/mariadb103-server. Измените путь, чтобы соответствовать той версии, которую вы хотите установить.

$ vi maraidb-package-builder.txt

databases/mariadb103-server

Используйте команду options для инициализации параметров компиляции для пакетов, которые вы хотите, чтобы Poudriere скомпилировал.

# poudriere options -j package-builder -p local-ports -z mariadb-builder -f mariadb-package-builder.txt

Наконец, используйте команду bulk для компиляции пакетов.

# poudriere bulk -j package-builder -p local-ports -z mariadb-builder -f mariadb-package-builder.txt

Использование репозиториев Poudriere

Для использования Poudriere необходимо настроить веб-сервер, такой как Nginx или Apache, для предоставления каталога, скомпилированного Poudriere. Например, в приведенном выше примере вы бы отобразили jail package-builder: /usr/local/poudriere/data/packages/package-builder/. Может быть полезно отобразить этот каталог на поддомен, например, httpspkg.example.com или что-то подобное.

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

# vi /usr/local/etc/pkg/repos/FreeBSD.conf

FreeBSD: {
      enabled: no
}

Затем добавьте URL вашего репозитория Poudriere в файл конфигурации:

# vi /usr/local/etc/pkg/repos/mariadb.conf

custom: {
      url: "https://pkg.example.com",
      enabled: yes
}

Затем вы можете установить MariaDB из Poudriere с помощью менеджера пакетов.

# pkg install mariadb103-server
Содержание, воспроизводимое на этом сайте, является собственностью соответствующих владельцев, и это содержание не проверяется заранее компанией MariaDB. Мнения, информация и мнения, выраженные в этом содержании, не обязательно отражают взгляды MariaDB или любой другой стороны.

© 2023 MariaDB
Licensed under the Creative Commons Attribution 3.0 Unported License and the GNU Free Documentation License.
https://mariadb.com/kb/en/building-mariadb-on-freebsd/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API