- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试对 mysql
进行 dockerize 监控使用 prom/mysqld-exporter
和 prom/prometheus
.我已经配置了 docker-compose.yml 文件,如下所示:
version: '3'
services:
mysql:
image: mysql
container_name: mysql
restart: always
volumes:
- mysql:/var/lib/mysql
# command:
# - CREATE USER 'root'@'localhost' IDENTIFIED BY 'password' WITH MAX_USER_CONNECTIONS 3;
# - GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'root'@'localhost';
environment:
- MYSQL_ROOT_PASSWORD= password
- MYSQL_DATABASE= db #Defining a new Database
- MYSQL_USER= mostafa
- MYSQL_PASSWORD= ghadimi
ports:
- 3306:3306
- 33060:33060
prometheus:
image: prom/prometheus
container_name: prometheus
ports:
- 9090:9090
volumes:
- prometheus:/prometheus
- ./prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
command:
- --config.file=/etc/prometheus/prometheus.yml
mysql-exporter:
image: prom/mysqld-exporter
container_name: mysql-exporter
ports:
- 9104:9104
volumes:
- ./mysql-exporter/.my.cnf:/root/.my.cnf
depends_on:
- mysql
volumes:
mysql:
prometheus:
这是我的 ./mysql-exporter/.my.cnf 文件:
[client]
user=mostafa
password=ghadimi
运行后docker-compose up
命令,除以下错误外,一切正常!:
mysqld: 调用 tcp 127.0.0.1:3306: connect: 连接被拒绝
我不知道该如何解决!
PS: 我也试过通过它的容器和docker exec -it <container-id> bash
连接到mysql命令,我尝试了所有可能的密码(比如空字符串和我在 docker-compose 文件中设置的密码),但我遇到了另一个错误:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
最佳答案
Mysql-d exporter 正在 localhost
上寻找 mysql 实例,但它没有在 mysqld 容器内的 localhost
上运行。您必须将外部连接字符串传递给 mysql
的主机,因为这是 docker-compose 中 mysql 服务的名称。来自 mysqld-exporter docs
- 您必须使用此数据源连接字符串将环境变量传递给 mysqld-exporter 容器:
mysql-exporter:
image: prom/mysqld-exporter
container_name: mysql-exporter
ports:
- 9104:9104
volumes:
- ./mysql-exporter/.my.cnf:/root/.my.cnf
environment:
- DATA_SOURCE_NAME="user:password@mysql:3306/database"
depends_on:
- mysql
然后将用户、密码和数据库名称更改为您想要的。
关于mysqld : dial tcp 127. 0.0.1:3306: 连接:连接被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57345845/
我的问题开始于我无法再以 root 身份登录我的 mysql 安装。我试图在没有打开密码的情况下运行 mysql...但是每当我运行命令时 # mysqld_safe --skip-grant-tab
我的问题开始于我在安装 mysql 时无法再以 root 身份登录。我试图在没有打开密码的情况下运行 mysql ......但是每当我运行命令时 # mysqld_safe --skip-grant
我在 CentOS 上的 mySQL 服务器一直运行正常,但是,我今天突然无法重启mysqld。 1) #/etc/rc.d/init.d/mysqld 启动 显示[失败] 2)查看日志 tail /
ruby 2.2.3p173(2015-08-18 修订版 51636)[x86_64-linux] Rails 5.0.0.1 服务器版本:5.7.13-0ubuntu0.16.04.2(Ubunt
目前我在 Linux Centos 上遇到 mysql 的问题。它突然停止了。 然后我尝试用 service mysqld start 命令启动 mysql,它给出错误 - 尝试启动 MySQL 守护
我刚注册到 Stack Overflow,因为从 2 天前开始我真的无法摆脱这个问题。我使用 Xampp。 所以,我正在关注这个 Laravel tutorial当我从终端输入项目目录或每个其他目录
我在使用 MAMP 启动 MySQL 服务器时遇到问题,问题可能是我似乎无法在打开 MAMP 之前终止所有 mysqld 进程。启动 MAMP 会创建第二个冲突的 mysqld 进程。在打开 MAMP
进程文件: mysqld-nt or mysqld-nt.exe 进程名称: MySQL Daemon 进程类别:存在安全风险的进程 英文描述: mysqld-nt.exe belongs
在我的 CentOS 版本 5.10(最终版本)上,内核版本:Linux 2.6.18-371.6.1.el5 #1 SMP Wed Mar 12 20:08:05 EDT 2014 i686 i68
我尝试通过套接字映射从docker容器访问主机上运行的mysql服务器。 这就是 Dockerfile 的样子。 FROM ubuntu:16.04 ENV container docker ENV
这是我在这里的第一篇文章,所以我希望我做的一切都是正确的,不要忘记任何重要信息。我很高兴得到任何提示,因为我的想法已经用完了(如果我有的话 ;))。 我正在(或曾经)在 Raspbian Jessie
控制台说 [root@ip-172-31-18-2 mysql]# service mysqld start Starting mysqld (via systemctl): Job for mys
我知道以前有人问过这个问题。但我几乎尝试了一切。 我在/var/run/mysqld 中没有像/var/run/mysql 文件夹那样的 .sock 文件 MySQL 似乎正在运行: mysql
我今天尝试连接到 MySQL 服务器,发现我没有任何 mysqld.sock,哪里都没有。 我尝试了几种方法来恢复它,但都没有成功。我试图执行一个./mysqld.start 在 /etc/init.
这对我来说很奇怪,因为当我运行 sudo find/-type smysql.sock 位置是 /opt/lampp/var/mysql/mysql.sock,问题是当我使用 rail s< 启动 r
我正在重置 MYSQL 密码,因为我忘了它。我在 Centos 7 上使用 MYSQL 5.6.41。 我遵循了以下步骤: 停止 MYSQL 使用: service mysql stop 以安全模式启
ubuntu mysql 5.7/var/run/mysqld/mysqld.sock? mysql start ERROR 2002 (HY000): Can't connect to local
我正在尝试使用 docker 运行一个 Ruby on Rails 项目,但我不知道如何让这些东西工作,可能是因为我不熟悉 docker。 我在 Ubuntu 16.04 上,从现在开始: 我已经安装
我在访问我的数据库时遇到问题, 当我尝试运行 mysql -h localhost -u root -p并输入密码 我收到这种错误 ERROR 2002 (HY000): Can't connect
我是 Ubuntu 新手。我在 Ubuntu 上安装了 xampp 并且工作正常。但是当我尝试从终端运行 mysql -u username -p pass 时,我收到了这个错误: ERROR 200
我是一名优秀的程序员,十分优秀!