Hello! 宋文武 <iyzs...@gmail.com> skribis:
> * gnu/services/database.scm (<mysql-configuration>): New record type. > (%mysql-accounts, mysql-service-type): New variables. > (mysql-configuration-file, %mysql-activation, mysql-shepherd-services) > (mysql-services): New procedures. > * doc/guix.texi (Database Services): Document it. [...] > +@deffn {Scheme Procedure} mysql-service [#:config (mysql-configuration)] > +Return a service that runs @command{mysqld}, the MySQL database server. s/MySQL/MySQL or MariaDB/ > +@deftp {Data Type} mysql-configuration > +Data type representing the configuration of @var{mysql-service}. > + > +@table @asis > +@item @code{mysql} (default: @var{mariadb}) > +Package object of the MySQL database server, can be either @var{mariadb} > +or @var{mysql}. > +@end table > +@end deftp Do you have plans to extend this type eventually? > +(define (%mysql-activation config) Please add a docstring. IIUC it initializes the ‘mysql’ database for user ‘mysql’, and that database contains configuration info, right? Otherwise LGTM! If you want, it would be awesome if you could come up with a (gnu tests databases) module that would run a GuixSD with the mysql service, and then spawn a mysql client to make sure the basics work as expected. Thank you for working on it! Ludo’.