docker容器内
vi /etc/my.cnf
[mysql]
host=127.0.0.1
user=root
password=root
[mysqladmin]
host=127.0.0.1
user=root
password=root
注:需要修改user和password
需要重启docker内mysql服务
docker restart mysql
修改并上传userparameter_dockermysql.conf到/etc/zabbix/zabbix_agentd.d下
chown -R zabbix.zabbix /etc/zabbix/zabbix_agentd.d/userparameter_dockermysql.conf
注:需要改动的位置
mysql20210111 是容器名称,根据自己实际情况修改,非容器安装mysql,把没行的docker exec -i mysql20210111 bash -c去掉即可
systemctl restart zabbix-agent
给/var/run/docker.sock添加权限
chmod 663 /var/run/docker.sock
注:
下次重启docker,权限可能会发生变化
添加之后。发现zabbix还是无法监控mysql的各项数据:如图
这里提升无法连接数据库?
于是我进入容器mysql 手动去看看是否能进入。不能?我查看了N遍用户密码。对啊。于是我查看了日志显示:如图
端口33016?进入容器 继续登入 mysql -uroot -pXXXX -p 33016 成功了。
然后进行下一步。去看看 userparameter_dockermysql.conf 上面有路径,把用户该一该。从起一下大功告成?登入命令 与端口
问题二:密码外露问题
解决。去修改了userparameter_dockermysql.conf 文件
然后重启zabbix-server 不一会数据就上来了。
###总结:最主要的是端口 被更改。另外开头添加的my.cnf的意义一点也没有了。无法免密登录以及 导致的 数据库链接不上,