MySQL monitoring with Netdata
MySQL is an open-source relational database management system.
This module will monitor one or more MySQL servers, depending on your configuration.
Requirements
MySQL user specified in configuration should have at least USAGE, REPLICATION CLIENT permissions.
To create the user, enter following to MySQL shell:
CREATE USER 'netdata'@'localhost';
GRANT USAGE, REPLICATION CLIENT ON *.* TO 'netdata'@'localhost';
FLUSH PRIVILEGES;
Charts
It will produce following charts:
- Bandwidth in
kilobits/s
- Queries in
queries/s
- Queries By Type in
queries/s
- Handlerse in
handlers/s
- Table Locks in
locks/s
- Table Select Join Issuess in
joins/s
- Table Sort Issuess in
joins/s
- Tmp Operations in
created/s
- Connections in
connections/s
- Connections Active in
connections/s
- Binlog Cache in
threads
- Threads in
transactions/s
- Threads Creation Rate in
threads/s
- Threads Cache Misses in
misses
- InnoDB I/O Bandwidth in
KiB/s
- InnoDB I/O Operations in
operations/s
- InnoDB Pending I/O Operations in
operations/s
- InnoDB Log Operations in
operations/s
- InnoDB OS Log Pending Operations in
operations
- InnoDB OS Log Operations in
operations/s
- InnoDB OS Log Bandwidth in
KiB/s
- InnoDB Current Row Locks in
operations
- InnoDB Row Operations in
operations/s
- InnoDB Buffer Pool Pagess in
pages
- InnoDB Buffer Pool Flush Pages Requests in
requests/s
- InnoDB Buffer Pool Bytes in
MiB
- InnoDB Buffer Pool Operations in
operations/s
- QCache Operations in
queries/s
- QCache Queries in Cache in
queries
- QCache Free Memory in
MiB
- QCache Memory Blocks in
blocks
- MyISAM Key Cache Blocks in
blocks
- MyISAM Key Cache Requests in
requests/s
- MyISAM Key Cache Requests in
requests/s
- MyISAM Key Cache Disk Operations in
operations/s
- Open Files in
files
- Opened Files Rate in
files/s
- Binlog Statement Cache in
statements/s
- Connection Errors in
errors/s
- Slave Behind Seconds in
seconds
- I/O / SQL Thread Running Statein
bool
- Replicated Writesets in
writesets/s
- Replicated Bytes in
KiB/s
- Galera Queue in
writesets
- Replication Conflicts in
transactions
- Flow Control in
ms
Configuration
Edit the go.d/mysql.conf configuration file using edit-config from the your agent's config
directory, which is typically at /etc/netdata.
cd /etc/netdata # Replace this path with your Netdata config directory
sudo ./edit-config go.d/mysql.conf
DSN syntax in details.
jobs:
- name: local
dsn: [username[:password]@][protocol[(address)]]/dbname[?param1=value1&...¶mN=valueN]
# username:password@protocol(address)/dbname?param=value
# user:password@/dbname
# Examples:
# - name: local
# dsn: user:pass@unix(/usr/local/var/mysql/mysql.sock)/
# - name: remote
# dsn: user:pass5@localhost/mydb?charset=utf8
If no configuration is given, module will attempt to connect to mysql server via unix socket in the following order:
/var/run/mysqld/mysqld.sock without password and with username root;
/usr/local/var/mysql/mysql.sock without password and with username root;
localhost:3306 without password and with username root.
For all available options please see module configuration file.
Troubleshooting
Check the module debug output. Run the following command as netdata user:
./go.d.plugin -d -m mysql