Skip to main content

Maria DB


MariaDB is an open-source relational database management system (RDBMS) that was originally forked from MySQL. It offers high performance, scalability, and compatibility with MySQL, while adding new features, storage engines, and security enhancements. It is widely used for web applications, analytics, and enterprise solutions.


Prerequisites

The following prerequisites must be met in order for a user to create and test a successful connection.

  • The MariaDB server must be accessible from the iceDQ server.
  • Valid credentials to access the database.
  • MariaDB JDBC version 3.3.2 or above.

Authentication Mechanism

The following authentication mechanism is supported.

  • Username & Password

Connection Properties

Use the following properties to create a valid connection. Properties marked with an asterisk (*) are required.

NameDescriptionExample Values
Connection Name *        Name that uniquely identifies the connection.MariaDB_Prod_conn
Driver *Driver used to establish the connection. One driver is available by default.MariaDB Native JDBC
Custom JDBC URLStandardized string used to define the connection details. Use this format supported by the driver: jdbc:mariadb://[host]:[port]/[database]jdbc:mariadb://174.149.26.32:3306/acme_db
Host *IP address or hostname of the MariaDB database server.mariadb.acme.com or 174.149.26.32
Port *Port on which the server listens. Default is 3306 for MariaDB.3306
Database *Name of the target database in MariaDB.acme_db
Type *The connection type – either System Connection or User Connection. Refer to Connections for more details.System or User
Username *Database login username with necessary privileges.john_doe
Password *Password associated with the specified username.mariadb_password

Custom Properties

The following optional connection properties can be configured based on user requirements.

PropertyDefault ValuePossible ValuesDescription
connectTimeout30000Integer (ms)The connect timeout value in milliseconds. 0 for no timeout.
useServerPrepStmtsfalsetrue, falsePrepares statements on the server side before execution. Useful for repeated queries.
allowLocalInfiletruetrue, falsePermit loading data from file using LOAD DATA LOCAL INFILE.
useMysqlMetadatafalsetrue, falseForces DatabaseMetaData.getDatabaseProductName() to return "MySQL" for compatibility with frameworks that don't support MariaDB.
restrictedAuthnullComma-separated list of authentication pluginsRestricts allowed authentication plugins.
timezonedisableddisabled, <timezone>Forces session timezone.
sslModedisabledisable, trust, verify-ca, verify-fullEnables SSL/TLS in a specific mode.
serverSslCertN/APath, classpath resource, or certificate stringProvides server’s certificate or CA certificate for trusting self-signed certificates.
keyStoreN/AFile pathPath of the keyStore containing client private key and certificates.
keyStorePasswordN/AAny stringPassword for the client certificate keyStore.
enabledSslCipherSuitesJRE defaultComma-separated cipher listForces TLS/SSL cipher list.
keyStoreTypenull (Java default)JKS, PKCS12Type of keyStore.
enabledSslProtocolSuitesJava defaultComma-separated protocol list (e.g., TLSv1, TLSv1.1, TLSv1.2)Forces TLS/SSL protocol suite.
poolfalsetrue, falseUse pool instead of DataSource.
poolNameAuto-generatedAny stringPool name identifier.
maxPoolSize8IntegerMaximum number of physical connections in pool.
minPoolSizemaxPoolSizeIntegerMinimum number of connections kept in pool.
poolValidMinDelay1000Integer (ms)Minimum delay before validating a reused connection.
maxIdleTime600 (s)Integer (≥60s)Maximum idle time for pooled connections.
useResetConnectionfalsetrue, falseResets connection state when returned to pool.
registerJmxPooltruetrue, falseRegister JMX monitoring for pools.

Supported Datatypes

The following data types are supported.

  • TINYINT
  • SMALLINT
  • MEDIUMINT
  • INT
  • BIGINT
  • DECIMAL
  • FLOAT
  • DOUBLE
  • BIT
  • CHAR
  • VARCHAR
  • TEXT
  • TINYTEXT
  • MEDIUMTEXT
  • LONGTEXT
  • DATE
  • DATETIME
  • TIMESTAMP
  • TIME
  • YEAR
  • ENUM
  • SET
  • JSON
  • UUID

Unsupported Datatypes

The following data types are not supported.

  • BINARY
  • VARBINARY
  • TINYBLOB
  • MEDIUMBLOB
  • LONGBLOB
  • OID