Yeah, that's a 'hat' no one really anticipates wearing running a DIY Moodle - until one needs to put it on! :|
Good that Health Check didn't find anything with Quizzes but as far as speed don't think it ever did. :|
Since I, also, am not a certified DB admin person, but suggested you install it, guess I'll give 'er a go at interpretations.
In the Recommendations ... last of the report ...
MySQL was started within the last 24 hours - recommendations may be inaccurate
So before tweaking anything, might want to wait a day and run tuner again. I run it about once a week and have had to tune again depending upon how system is being used. When I first install a site, more frequently.
However, this one probably needed to be addressed ASAP:
1. [!!] Successfully authenticated with no password - SECURITY RISK!
Think I said to run it with superuser credentials (login/pass) for DB server .. which appears to be 'root' with whatever password given. But, you could run it using the DB user/DB pasword you have in your config.php of moodle.
Overall, not bad ... the key things which are all OK ...:
In Performance Metrics
[OK] Maximum reached memory usage: 492.6M (12.48% of installed RAM)
[OK] Maximum possible memory usage: 3.2G (82.92% of installed RAM)
[OK] Overall possible memory usage with other process is compatible with memory available
[OK] Slow queries: 0% (0/64K)
[OK] Highest usage of available connections: 2% (4/151)
[OK] Aborted connections: 0.00% (0/135)
In InnoDB Metrics
[OK] InnoDB File per table is activated
[OK] InnoDB buffer pool / data size: 128.0M/13.4M
In the Recommendations:
performance_schema=ON
which needs to be added to your my.cnf file (main config file for DB server) and DB service restarted ... wait a day for it to collect info.
The following related to the security warning above:
General recommendations:
Restrict Host for 'bn_moodle'@'%' to 'bn_moodle'@LimitedIPRangeOrLocalhost
RENAME USER 'bn_moodle'@'%' TO 'bn_moodle'@LimitedIPRangeOrLocalhost;
Restrict Host for 'root'@'%' to 'root'@LimitedIPRangeOrLocalhost
RENAME USER 'root'@'%' TO 'root'@LimitedIPRangeOrLocalhost;
I run MySQL, not MariaDB, but when either installed, initially, there was a command to run to secure the installation ... having to do with host and users.
IF DB server is on the same server as your code, config.php should have 'localhost' for DB server. And, to make sure DB is secure, localhost is the only way to access it ... + user moodle and user root should be the only users to use localhost. MySQL/MariaDB protects itself using DB's and tables of it's own. From DB client: show databases; one would see those if user auth allows (root should).
Now before doing anyting with DB, good idea to make a backup (sql dump) of your Moodle DB. Have never regretted the time it took to do that!
Please see:
https://mariadb.com/kb/en/mysql_secure_installation/
for shoring up security (host/user).
If MariaDB works like MySQL - supposed to be a plugin replacement to MySQL - without the 'skipnetworking' turned on ... which tells DB server NOT to do a DNS lookup for each request ... that could be one reason for slowness. localhost supposed to be using a 'socket connection' anyway so if restricted to localhost no need to look that up as it's always gonna be 127.0.0.1 or ::1!
https://mariadb.com/kb/en/connecting-to-mariadb/
'SoS', Ken