MariaDB Connector/C Overview
Quickstart Guide for Connector/C
MariaDB Connector/C is used to connect applications developed in C/C++ to MariaDB and MySQL databases.The client library is LGPL licensed.
Integration with MariaDB Server
MariaDB Connector/C is distributed with MariaDB Server packages. Eventually, it will completely replace the functionality that has traditionally been performed by libmysqlclient
in those packages. Currently, MariaDB Connector/C has replaced libmysqlclient
as the client library for client utilities that are distributed with MariaDB Server. See MDEV-9055 for more information.
Installing MariaDB Connector/C
MariaDB Connector/C packages can be downloaded by selecting your desired version from the following page:
MariaDB Connector/C packages can also be downloaded by selecting C/C++ connector as the Product on the following page:
See the instructions below for information on how to install the MariaDB Connector/C package for your operating system.
Installing MariaDB Connector/C on Windows
To install MariaDB Connector/C on Windows, we distribute MSI packages. The MSI installation process is fairly straightforward. Both 32-bit and 64-bit MSI packages are available.
Installing MariaDB Connector/C on Linux
MariaDB Connector/C is distributed in binary tarballs on Linux.
Installing with a Package Manager
Since MariaDB Connector/C is now integrated with MariaDB Server, it can also be installed via a package manager on Linux. In order to do so, your system needs to be configured to install from one of the MariaDB repositories. The repository needs to be configured for MariaDB 10.2 or later.
You can configure your package manager to install it from MariaDB Corporation's MariaDB Package Repository by using the MariaDB Package Repository setup script.
You can also configure your package manager to install it from MariaDB Foundation's MariaDB Repository by using the MariaDB Repository Configuration Tool.
Installing with yum/dnf
On RHEL, CentOS, Fedora, and other similar Linux distributions, it is highly recommended to install the relevant RPM package from MariaDB's
repository using yum or dnf. Starting with RHEL 8 and Fedora 22, yum
has been replaced by dnf
, which is the next major version of yum
. However, yum
commands still work on many systems that use dnf
. For example:
sudo yum install MariaDB-shared
If you want to build applications with MariaDB Connector/C, then you will also need to install the development package. For example:
sudo yum install MariaDB-devel
Installing with apt-get
On Debian, Ubuntu, and other similar Linux distributions, it is highly recommended to install the relevant DEB package from MariaDB's repository using apt-get. For example:
sudo apt-get install libmariadb3
If you want to build applications with MariaDB Connector/C, then you will also need to install the development package. For example:
sudo apt-get install libmariadb-dev
Installing with zypper
On SLES, OpenSUSE, and other similar Linux distributions, it is highly recommended to install the relevant RPM package from MariaDB's repository using zypper. For example:
sudo zypper install MariaDB-shared
If you want to build applications with MariaDB Connector/C, then you will also need to install the development package. For example:
sudo zypper install MariaDB-devel
Installing MariaDB Connector/C from Source
See Building Connector/C From Source for information on how to build MariaDB Connector/C from source.
API - Function Reference
MariaDB Connector/C has exactly the same API as the MySQL Connector/C for MySQL 5.5
The function reference is available at:
It is also downloadable in html format from mariadb-client-doc.zip
Configuring MariaDB Connector/C with Option Files
Just like MariaDB Server and libmysqlclient, MariaDB Connector/C can also read configuration options from client option groups in option files.
See Configuring MariaDB Connector/C with Option Files for more information.
Known Bugs and Limitations
double to string conversion for prepared statements doesn't work correctly
Connector 3.0.7 and below doesn't support the MySQL 8.0 default authentication protocol, caching_sha2_password. This protocol should be supported in Connector/C 3.0.8 and above.
Reporting Bugs
If you find a bug, please report it via the CONC project on MariaDB's Jira bug tracker.
Source Code
The source code is available at the mariadb-connector-c repository on GitHub.
License
GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
For licensing questions, see the Licensing FAQ.
Last updated
Was this helpful?