So there's this blog post circling around, claiming full native systemd suport in MySQL. It's quite a stretch and not really true.
It boils down to MySQL shipping mysqld.service unit. It invokes database as Type=forking and does not even scratch systemd support.
At the minimum, MySQL should implement Type=notify behaviour. It would give perfect, 100% correct readiness notification. It would open a door to utilizing the watchdog, which is important for people caring about reliability. It would make sysadmins happier by providing extended status messages.
Above the minimum level would be to support for socket-activation. This is often asked by various people. It would bring fully implicit dependencies, make the database always available and allow for restarts without dropping any client connections.
The team behind the blogpost writes: ”It would be great if systemd provides some sort of generic readiness protocol without linking to their library”. Uhm, hello? Systemd's protocol is extremally simple: get a socket location from an environment variable, open it and write a text string. You can't go more simple and generic than that! The protocol is fully described in ”man sd_notify”.
There's no need to link to systemd libraries if you don't want to. The protocol can be implemented in few lines of code in any given language. libsystemd is a great example how to do it – few concise lines of basic C.
Even if you don't like LGPL-2.1+ license, you can grab liberally, MIT-licensed earlier version from systemd git.
To sum up, what's in MysSQL 5.7.6 is not a native systemd support.