Вход на сайт

Просмотр новости

Найдите то, что Вас интересует

Building MariaDB Server from the sources

Дата публикации: 05-04-2024 08:47:13

Recently I had to test a new MariaDB feature that was developed at our request (MDEV-33782). To test this feature I had to build the MariaDB server myself from source, which I have not done for a long time. So a new challenge, especially with CMake…
I followed the MariaDB documentation Get, Build and Test Latest MariaDB the Lazy Way to build the server.
On Ubuntu 22.04 it did not work for me, for reasons unknown to me. So I cloned an Ubuntu 23.04 (Lunar Lobster) LXC container and built the MariaDB server in it.
To make the whole thing work, however, the package sources had to be added to the file /etc/apt/sources.list in the container first:
deb-src http://de.archive.ubuntu.com/ubuntu lunar main restricted universe multiverse
deb-src http://de.archive.ubuntu.com/ubuntu lunar-updates main restricted universe multiverse
deb-src http://de.archive.ubuntu.com/ubuntu lunar-security main restricted universe multiverse
deb-src http://de.archive.ubuntu.com/ubuntu lunar-backports main restricted universe multiverse
Then we proceeded according to the instructions:
shell > apt install build-essential bison
shell > apt build-dep mariadb-server
The corresponding branch was cloned:
shell > # git clone https://github.com/andremralves/server.git mariadb-MDEV-33782
shell > # git branch --all
shell > git clone --branch MDEV-33782 --single-branch https://github.com/andremralves/server.git mariadb-MDEV-33782
shell > cd mariadb-MDEV-33782
shell > # git checkout 11.5
and then the server was build. This took about 20 minutes on my old machine. CMake still ran into an error, which was solved by installing the corresponding package (MDEV-33815):
shell > apt install libgnutls28-dev
shell > cmake . -DBUILD_CONFIG=mysql_release && make -j8
The tests were executed:
shell > cd mysql-test
shell > ./mtr rpl.rpl_create_drop_event
Logging: ./mtr rpl.rpl_create_drop_event
VS config:
vardir: /root/mariadb-MDEV-33782/mysql-test/var
Checking leftover processes...
Removing old var directory...
Creating var directory \'/root/mariadb-MDEV-33782/mysql-test/var\'...
Checking supported features...
MariaDB Version 11.5.0-MariaDB
- SSL connections supported
- binaries built with wsrep patch
Collecting tests...
Installing system database...
==============================================================================
TEST RESULT TIME (ms) or COMMENT
--------------------------------------------------------------------------
worker[01] Using MTR_BUILD_THREAD 300, with reserved ports 16000..16019
worker[01] mysql-test-run: WARNING: running this script as _root_ will cause some tests to be skipped
rpl.rpl_create_drop_event \'mix\' [ pass ] 522
rpl.rpl_create_drop_event \'row\' [ pass ] 525
rpl.rpl_create_drop_event \'stmt\' [ pass ] 525
--------------------------------------------------------------------------
The servers were restarted 2 times
Spent 1.572 of 14 seconds executing testcases
Completed: All 3 tests were successful.
And then a binary tarball was build for further testing.
shell > make package
Run CPack packaging tool...
CPack: Create package using TGZ
CPack: Install projects
CPack: - Run preinstall target for: MariaDB
CPack: - Install project: MariaDB []
CPack: Create package
CPack: - package: /root/mariadb-MDEV-33782/mariadb-11.5.0-linux-x86_64.tar.gz generated.
Building MariaDB Server from the sources appeared first on MariaDB.org


Основное содержимое страницы с новостью.

Recently I had to test a new MariaDB feature that was developed at our request (MDEV-33782). To test this feature I had to build the MariaDB server myself from source, which I have not done for a long time. So a new challenge, especially with CMake

I followed the MariaDB documentation Get, Build and Test Latest MariaDB the Lazy Way to build the server.

On Ubuntu 22.04 it did not work for me, for reasons unknown to me. So I cloned an Ubuntu 23.04 (Lunar Lobster) LXC container and built the MariaDB server in it.

To make the whole thing work, however, the package sources had to be added to the file /etc/apt/sources.list in the container first:

deb-src http://de.archive.ubuntu.com/ubuntu lunar main restricted universe multiverse
deb-src http://de.archive.ubuntu.com/ubuntu lunar-updates main restricted universe multiverse
deb-src http://de.archive.ubuntu.com/ubuntu lunar-security main restricted universe multiverse
deb-src http://de.archive.ubuntu.com/ubuntu lunar-backports main restricted universe multiverse

Then we proceeded according to the instructions:

shell> apt install build-essential bison
shell> apt build-dep mariadb-server

The corresponding branch was cloned:

shell> # git clone https://github.com/andremralves/server.git mariadb-MDEV-33782
shell> # git branch --all
shell> git clone --branch MDEV-33782 --single-branch https://github.com/andremralves/server.git mariadb-MDEV-33782
shell> cd mariadb-MDEV-33782
shell> # git checkout 11.5

and then the server was build. This took about 20 minutes on my old machine. CMake still ran into an error, which was solved by installing the corresponding package (MDEV-33815):

shell> apt install libgnutls28-dev
shell> cmake . -DBUILD_CONFIG=mysql_release && make -j8

The tests were executed:

shell> cd mysql-test
shell> ./mtr rpl.rpl_create_drop_event
Logging: ./mtr  rpl.rpl_create_drop_event
VS config:
vardir: /root/mariadb-MDEV-33782/mysql-test/var
Checking leftover processes...
Removing old var directory...
Creating var directory '/root/mariadb-MDEV-33782/mysql-test/var'...
Checking supported features...
MariaDB Version 11.5.0-MariaDB
 - SSL connections supported
 - binaries built with wsrep patch
Collecting tests...
Installing system database...

==============================================================================

TEST                                      RESULT   TIME (ms) or COMMENT
--------------------------------------------------------------------------

worker[01] Using MTR_BUILD_THREAD 300, with reserved ports 16000..16019
worker[01] mysql-test-run: WARNING: running this script as _root_ will cause some tests to be skipped
rpl.rpl_create_drop_event 'mix'          [ pass ]    522
rpl.rpl_create_drop_event 'row'          [ pass ]    525
rpl.rpl_create_drop_event 'stmt'         [ pass ]    525
--------------------------------------------------------------------------
The servers were restarted 2 times
Spent 1.572 of 14 seconds executing testcases

Completed: All 3 tests were successful.

And then a binary tarball was build for further testing.

shell> make package
Run CPack packaging tool...
CPack: Create package using TGZ
CPack: Install projects
CPack: - Run preinstall target for: MariaDB
CPack: - Install project: MariaDB []
CPack: Create package
CPack: - package: /root/mariadb-MDEV-33782/mariadb-11.5.0-linux-x86_64.tar.gz generated.

Схожие новости

#Наименование новостиТональностьИнформативностьДата публикации
1Quick builds and rebuilds of MariaDB using Docker08.0112-03-2023
2Grokking the MariaDB test runner (MTR)06.7719-02-2023
3Off-CPU Analysis Attempt to Find the Reason of Performance Regression in MariaDB 10.4011.209-05-2021
4Upgrading MariaDB to the pre-latest minor release07.4608-02-2023
5Installing the Latest MariaDB from the Repository on Debian 10 and Downgrading to Older Minor Version05.929-11-2020
6MariaDB 10.5 and Memory Instrumentation in Performance Schema – First Steps08.609-08-2020
7The Insert Benchmark vs MariaDB 10.2 to 13.0 on a 32-core server06.4308-04-2026
8Sysbench vs MariaDB on a small server: using the same charset for all versions08.3206-04-2026
9The Insert Benchmark vs MariaDB 10.2 to 13.0 on a 24-core server012.608-04-2026
10How to Add Probe Inside a Function and Access Local Variables with bpftrace05.904-02-2022

Классификация: . Схожих патентов: 0. Схожих новостей: 10. Тональность: 0. Информативность: 5.29. Источник: mariadb.org.