MAC搭建mysql数据库监控
环境准备
1.mysql -> 8.0.26
2.prometheus -> 2.28.1
3.node_exporter -> 1.2.2
4.mysqld_exporter -> 0.14.0
5.grafana -> 8.1.0
安装mysql(使用brew安装)
安装命令
brew install mysql
启动mysql服务(两种方式)
brew service start mysql 后台启动mysql
mysql.server start 前台启动mysql(关闭控制台服务停止)
这里我们使用
mysql.server start
如果提示没有权限,使用
sudo mysql.server start
设置密码
运行命令
mysql_secure_installation
如果没有权限,同理加 sudo
正常情况按照提示即可设置完成
连接mysql
运行如下命令,输入密码即可
mysql -uroot -p
tip:如果遇到登录不了的情况,例如
使用mysql -uroot -p 出现‘Access denied for user root‘@localhost’ (using password yes)
解决方法,关闭数据库
mysql.server stop
安全模式启动数据库(一般在usr/local/bin目录下)
sudo mysqld_safe --skip-grant-tables
此时通过mysql -uroot -p 进入了mysql控制台,无需密码
1.查看mysql初始密码策略,输入
show variables like 'validate_password%';
2.如果想要修改为简单的密码,需要设置密码验证强度等级为low
set global validate_password.policy=LOW;
3.mysql 8.0.26 默认密码长度为8 ,按照通用的,设置为6
set global validate_password.length=6;
4.修改root用户密码
alter user 'root'@'localhost' IDENTIFIED WITH mysql_native_password by 'xxx';
5.刷新mysql系统权限相关参数
flush privileges;
6.重启mysql进行登陆
mysql.server restart
7.通过数据库连接工具进行连接(参考socket)
https://blog.csdn.net/fatong3/article/details/80392401
最终效果如下图:
grafana安装
安装命令
brew install grafana
启动
brew services start grafana
访问并登录(http://localhost:3000默认密码admin/admin)
效果如下图:
安装node_exporter
安装启动命令
brew install node_exporter
brew services start node_exporter
启动后通过(http://localhost:9100 查看)
效果图:
安装prometheus
安装启动命令
brew install prometheus
brew services start prometheus
启动后通过(http://localhost:9090/查看)
效果图:
安装mysqld_exporter
1.https://prometheus.io/download/下载安装包 (搜索mysqld_exporter 对应平台)
2.解压安装包到指定目录(/usr/local/Cellar/mysqld_exporter)
3.指定一个监控用户(我直接使用的root)并且在/usr/local/Cellar/mysqld_exporter/mysqld_exporter-0.14.0.darwin-amd64 下创建文件my.cnf内容如下:
[client]
host=localhost
port=3306
user=监控用户
password=密码
4.启动./mysqld_exporter --config.my-cnf=my.cnf
5.通过http://localhost:9104/metrics 访问
如下图:
配置prometheus.yml 文件
如下:
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
labels:
instance: prometheus
- job_name: 'mysql'
static_configs:
- targets: ['localhost:9104']
labels:
instance: mysql
- job_name: 'node'
static_configs:
- targets: ['localhost:9100']
labels:
instance: node
配置grafana仪表盘
配置 DataSources
添加一个 Prometheus 类型的数据源,将二者关联起来,点击 “Add data source” 按钮,填写 Prometheus 相关信息,如下图:
可以在网站搜索id直接导入
https://grafana.com/grafana/dashboards/?search=mysql
最终效果图:
每天进步一点点