MySQL
Appliku supports MySQL 8 as an alternative relational database engine. The provisioning workflow is identical to PostgreSQL, with connection URLs automatically injected into your application.
Supported Versions
| Version | Notes |
|---|---|
| MySQL 8 | Current supported release |
Provisioning a MySQL Database
- Open your application in the Appliku dashboard
- On the Application Overview page, scroll to the Databases block (bottom-right sidebar)
- Click Add Database
- Select MySQL 8 from the dropdown
- Select the server where the database should run
- Click Create
Appliku provisions a MySQL Docker container and generates connection credentials automatically.
Connection URL
Once provisioned, Appliku injects the connection URL as an environment variable:
mysql://user:password@host:port/dbname
Your application can read this variable to connect without any manual credential management.
Differences from PostgreSQL
If you are deciding between MySQL and PostgreSQL, consider the following:
| Aspect | PostgreSQL | MySQL |
|---|---|---|
| Specialized variants | PostGIS, pgvector, TimescaleDB | None |
| Built-in backup tool | Yes (via Appliku) | Manual only |
| Version options | 12, 15, 16, 17 | 8 |
| JSON support | Advanced (JSONB) | Basic (JSON) |
Appliku's built-in backup scheduling currently supports PostgreSQL only. For MySQL databases, you will need to handle backups manually using mysqldump or a similar tool.
Using MySQL with Django
# settings.py
import dj_database_url
DATABASES = {
"default": dj_database_url.config(default="sqlite:///db.sqlite3")
}
Ensure mysqlclient is in your requirements.txt:
mysqlclient
Using MySQL with Other Frameworks
Most frameworks support reading a DATABASE_URL environment variable natively or through an adapter library. Refer to your framework's documentation for connection string parsing.
Next Steps
- PostgreSQL -- The most common database choice on Appliku
- Database Management Overview -- All supported database engines