How to integrate a database with your charm
Charmed MySQL can be integrated with any charmed application that supports its interfaces. This page provides some guidance and resources for charm developers to develop, integrate, and troubleshoot their charm so that it may connect with MySQL.
Summary
- Check supported interfaces
- Integrate your charm with MySQL
- Troubleshooting & testing
- FAQ
Check supported interfaces
First, we recommend that you check the supported interfaces of the current charm. You have the option to use modern (preferred) or legacy interfaces.
Most existing charms currently use ops-lib-pgsql interface (legacy).
See also: MySQL legacy charm explanation
For new charms, Canonical recommends using data-platform-libs.
Integrate your charm with MySQL
See also:
Refer to mysql-test-app as a practical example of implementing data-platform-libs interfaces to integrate a charm with Charmed MySQL.
Troubleshooting and testing
- To learn the basics of charm debugging, start with Juju | How to debug a charm
- To troubleshoot Charmed MySQL, see the Troubleshooting page.
- To test the charm, check the Testing reference
FAQ
Does the requirer need to set anything in relation data?
It depends on the interface. Check the
mysql_client
interface requirements.
Is there a charm library available, or does my charm need to compile the mysql relation data on its own?
Yes, a library is available: data-platform-libs.
How do I obtain the database url/uri?
This feature is planned but currently missing.
Contact us if you have any questions, issues and/or ideas!