This is a read-only copy of the MariaDB Knowledgebase generated on 2024-12-03. For the latest, interactive version please visit https://mariadb.com/kb/.

About MariaDB Connector/C

The most recent Stable (GA) release of MariaDB Connector/C is:
MariaDB Connector/C 3.4.3

Latest Releases

DateReleaseStatusIncluded inRelease NotesChangelog
12 Nov 2024MariaDB Connector/C 3.4.3Stable (GA)MariaDB 11.6.2
MariaDB 11.7.1
Release NotesChangelog
20 Aug 2024MariaDB Connector/C 3.4.1Stable (GA)MariaDB 11.4.3
MariaDB 11.5.2
Release NotesChangelog
12 Nov 2024MariaDB Connector/C 3.3.13Stable (GA)Release NotesChangelog
20 Aug 2024MariaDB Connector/C 3.3.11Stable (GA)MariaDB 10.6.19
MariaDB 10.11.9
Release NotesChangelog
21 Jun 2024MariaDB Connector/C 3.3.10Stable (GA)MariaDB 10.6.18
MariaDB 10.11.8
Release NotesChangelog
12 Nov 2024MariaDB Connector/C 3.1.26Stable (GA)Release NotesChangelog
18 Jun 2024MariaDB Connector/C 3.1.24Stable (GA)MariaDB 10.5.25
MariaDB 10.4.34
Release NotesChangelog
29 Nov 2023MariaDB Connector/C 3.1.23Stable (GA)MariaDB 10.5.23
MariaDB 10.4.32
Release NotesChangelog

see all releases

About

MariaDB Connector/C is used to connect applications developed in C/C++ to MariaDB and MySQL databases.The client library is LGPL licensed.

Parts of MariaDB Connector/C are derived from PHP's mysqlnd extension and the original LGPL MySQL client library for MySQL 3.23. The rest of the code is written by developers at MariaDB Corporation Ab.

Integration with MariaDB Server

In MariaDB 10.2 and later, 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.

MariaDB Connector/C Release Series included with MariaDB Server Release Series

The following table shows which MariaDB Connector/C release series is included with each MariaDB Server release series.

MariaDB Server Release SeriesIncluded MariaDB Connector/C Release Series
MariaDB 10.4MariaDB Connector/C 3.1
MariaDB 10.3MariaDB Connector/C 3.1 (MariaDB 10.3.17 and later), MariaDB Connector/C 3.0 (MariaDB 10.3.16 and before)
MariaDB 10.2MariaDB Connector/C 3.1 (MariaDB 10.2.26 and later), MariaDB Connector/C 3.0 (MariaDB 10.2.25 and before)

MariaDB Connector/C Releases included with MariaDB Server Releases

The following tables show which MariaDB Connector/C release is included with each MariaDB Server release.

MariaDB 10.9

MariaDB Server ReleaseIncluded MariaDB Connector/C Release
MariaDB 10.9.2MariaDB Connector/C 3.3.2
MariaDB 10.9.1MariaDB Connector/C 3.3.1

MariaDB 10.8

MariaDB Server ReleaseIncluded MariaDB Connector/C Release
MariaDB 10.8.3MariaDB Connector/C 3.3.1
MariaDB 10.8.2MariaDB Connector/C 3.3.0
MariaDB 10.8.1MariaDB Connector/C 3.3.0

MariaDB 10.7

MariaDB Server ReleaseIncluded MariaDB Connector/C Release
MariaDB 10.7.4MariaDB Connector/C 3.2.7
MariaDB 10.7.3MariaDB Connector/C 3.2.6
MariaDB 10.7.2MariaDB Connector/C 3.2.6
MariaDB 10.7.1MariaDB Connector/C 3.2.5

MariaDB 10.6

MariaDB Server ReleaseIncluded MariaDB Connector/C Release
MariaDB 10.6.8MariaDB Connector/C 3.2.7
MariaDB 10.6.7MariaDB Connector/C 3.2.6
MariaDB 10.6.6MariaDB Connector/C 3.2.6
MariaDB 10.6.5MariaDB Connector/C 3.2.5
MariaDB 10.6.4MariaDB Connector/C 3.2.4
MariaDB 10.6.3MariaDB Connector/C 3.2.3
MariaDB 10.6.2MariaDB Connector/C 3.2.2
MariaDB 10.6.1MariaDB Connector/C 3.2.0

MariaDB 10.5

MariaDB Server ReleaseIncluded MariaDB Connector/C Release
MariaDB 10.5.17MariaDB Connector/C 3.1.18
MariaDB 10.5.16MariaDB Connector/C 3.1.17
MariaDB 10.5.15MariaDB Connector/C 3.1.16
MariaDB 10.5.14MariaDB Connector/C 3.1.16
MariaDB 10.5.13MariaDB Connector/C 3.1.15
MariaDB 10.5.12MariaDB Connector/C 3.1.14
MariaDB 10.5.10MariaDB Connector/C 3.1.13
MariaDB 10.5.9MariaDB Connector/C 3.1.12
MariaDB 10.5.7MariaDB Connector/C 3.1.11
MariaDB 10.5.4MariaDB Connector/C 3.1.9
MariaDB 10.5.3MariaDB Connector/C 3.1.8
MariaDB 10.5.1MariaDB Connector/C 3.1.7
MariaDB 10.5.0MariaDB Connector/C 3.1.6

MariaDB 10.4

MariaDB Server ReleaseIncluded MariaDB Connector/C Release
MariaDB 10.4.26MariaDB Connector/C 3.1.18
MariaDB 10.4.25MariaDB Connector/C 3.1.17
MariaDB 10.4.24MariaDB Connector/C 3.1.16
MariaDB 10.4.23MariaDB Connector/C 3.1.16
MariaDB 10.4.22MariaDB Connector/C 3.1.15
MariaDB 10.4.21MariaDB Connector/C 3.1.14
MariaDB 10.4.19MariaDB Connector/C 3.1.13
MariaDB 10.4.18MariaDB Connector/C 3.1.12
MariaDB 10.4.16MariaDB Connector/C 3.1.11
MariaDB 10.4.15MariaDB Connector/C 3.1.10
MariaDB 10.4.14MariaDB Connector/C 3.1.9
MariaDB 10.4.13MariaDB Connector/C 3.1.8
MariaDB 10.4.12MariaDB Connector/C 3.1.7
MariaDB 10.4.11MariaDB Connector/C 3.1.6
MariaDB 10.4.9, MariaDB 10.4.10MariaDB Connector/C 3.1.5
MariaDB 10.4.8MariaDB Connector/C 3.1.4
MariaDB 10.4.7MariaDB Connector/C 3.1.3
MariaDB 10.4.6MariaDB Connector/C 3.1.2
MariaDB 10.4.5MariaDB Connector/C 3.1.1
MariaDB 10.4.4MariaDB Connector/C 3.1.0

MariaDB 10.3

MariaDB Server ReleaseIncluded MariaDB Connector/C Release
MariaDB 10.3.36MariaDB Connector/C 3.1.18
MariaDB 10.3.35MariaDB Connector/C 3.1.17
MariaDB 10.3.34MariaDB Connector/C 3.1.16
MariaDB 10.3.33MariaDB Connector/C 3.1.16
MariaDB 10.3.32MariaDB Connector/C 3.1.15
MariaDB 10.3.31MariaDB Connector/C 3.1.14
MariaDB 10.3.29MariaDB Connector/C 3.1.13
MariaDB 10.3.28MariaDB Connector/C 3.1.12
MariaDB 10.3.26MariaDB Connector/C 3.1.11
MariaDB 10.3.25MariaDB Connector/C 3.1.10
MariaDB 10.3.24MariaDB Connector/C 3.1.9
MariaDB 10.3.22MariaDB Connector/C 3.1.7
MariaDB 10.3.21MariaDB Connector/C 3.1.6
MariaDB 10.3.19, MariaDB 10.3.20MariaDB Connector/C 3.1.5
MariaDB 10.3.18MariaDB Connector/C 3.1.4
MariaDB 10.3.17MariaDB Connector/C 3.1.3
MariaDB 10.3.15, MariaDB 10.3.16MariaDB Connector/C 3.0.10
MariaDB 10.3.13, MariaDB 10.3.14MariaDB Connector/C 3.0.9
MariaDB 10.3.12MariaDB Connector/C 3.0.8
MariaDB 10.3.11MariaDB Connector/C 3.0.7

MariaDB 10.2

MariaDB Server ReleaseIncluded MariaDB Connector/C Release
MariaDB 10.2.44MariaDB Connector/C 3.1.17
MariaDB 10.2.43MariaDB Connector/C 3.1.16
MariaDB 10.2.42MariaDB Connector/C 3.1.16
MariaDB 10.2.41MariaDB Connector/C 3.1.15
MariaDB 10.2.40MariaDB Connector/C 3.1.14
MariaDB 10.2.38MariaDB Connector/C 3.1.13
MariaDB 10.2.37MariaDB Connector/C 3.1.12
MariaDB 10.2.35MariaDB Connector/C 3.1.11
MariaDB 10.2.34MariaDB Connector/C 3.1.10
MariaDB 10.2.33MariaDB Connector/C 3.1.9
MariaDB 10.2.32MariaDB Connector/C 3.1.8
MariaDB 10.2.31MariaDB Connector/C 3.1.7
MariaDB 10.2.30MariaDB Connector/C 3.1.6
MariaDB 10.2.28, MariaDB 10.2.29MariaDB Connector/C 3.1.5
MariaDB 10.2.27MariaDB Connector/C 3.1.4
MariaDB 10.2.26MariaDB Connector/C 3.1.3
MariaDB 10.2.24, MariaDB 10.2.25MariaDB Connector/C 3.0.10
MariaDB 10.2.22, MariaDB 10.2.23MariaDB Connector/C 3.0.9
MariaDB 10.2.20, MariaDB 10.2.21MariaDB Connector/C 3.0.8
MariaDB 10.2.19MariaDB Connector/C 3.0.7

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:

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.

Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.