MariaDB
MariaDB is supported as a source database — the database LakeXpress extracts data from. It cannot be used as the LakeXpress DB.
Although MariaDB is derived from MySQL, use ds_type: "mariadb" rather than "mysql". LakeXpress has a dedicated driver for MariaDB to handle compatibility differences between the two.
Connection Parameters
| Parameter | Required | Description |
|---|---|---|
ds_type | Yes | Must be "mariadb" |
auth_mode | Yes | Must be "classic" |
server | Yes | Hostname or IP |
port | Yes | Port (default: 3306) |
database | Yes | Database name |
username | Yes | MariaDB username |
password | Yes | MariaDB password |
Required Permissions
-- Source database user:
GRANT SELECT ON your_database.* TO 'lakexpress_user'@'%';
-- INFORMATION_SCHEMA access is granted by default
Example: Source Database
{
"source_mariadb": {
"ds_type": "mariadb",
"auth_mode": "classic",
"info": {
"server": "localhost",
"port": 3306,
"database": "your-database",
"username": "$env{LX_MARIADB_USER}",
"password": "$env{LX_MARIADB_PASSWORD}"
}
}
}
Troubleshooting
Access denied for user:
Verify credentials, check host access: SELECT user, host FROM mysql.user WHERE user='your_user';, grant if needed: GRANT ALL PRIVILEGES ON database.* TO 'user'@'%';
Unknown database:
Verify name: SHOW DATABASES;, create if needed: CREATE DATABASE your_database;
Connection refused:
Check MariaDB is running (systemctl status mariadb), verify port (netstat -tlnp | grep 3306), check bind-address allows remote connections, check firewall (sudo ufw allow 3306/tcp).
See Also
- Database Connections Overview - Auth file format, security best practices