【问题标题】:How can i get IP address connections in MariaDB?如何在 MariaDB 中获取 IP 地址连接?
【发布时间】:2019-11-05 08:49:28
【问题描述】:

早上好!

我的 MariaDB 容器日志中有这条消息:

2019-11-05  8:42:50 185 [Warning] Access denied for user 'root'@'localhost' (using password: NO)

我不知道这些连接是从哪里建立的。有什么方法可以从建立这些连接的地方获取 IP 地址?

非常感谢!

【问题讨论】:

  • 检查SHOW PROCESSLIST

标签: mysql database mariadb


【解决方案1】:

试试这个,登录到您的 MySQL/MariaDB 控制台并输入以下命令。

update mysql.user set plugin = 'mysql_native_password' where User='root';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'yourpassword';
FLUSH PRIVILEGES

您可以创建日志文件:

进入 MySQL/MariaDB 服务器命令行工具

mysql -u root -p

设置通用日志文件路径:

SET GLOBAL general_log_file='/var/log/mysql/mycustom.log';

将日志输出设置为文件格式:

SET GLOBAL log_output = 'FILE';

启用服务器常规日志:

SET GLOBAL general_log = 'ON';

显示常规日志设置:

SHOW VARIABLES LIKE "general_log%";

【讨论】:

  • 但是这个授权是为了给用户root权限,对吧?我的问题是如何知道哪个主机或 IP 正在执行此特定连接。
  • 我已经更新了答案,你可以创建日志文件来查看被记录到文件中的请求。
  • 非常感谢!日志创建正确,但我只看到与另一个用户的连接(正确的连接),但我没有看到 root 连接。我执行了你说的命令,没有错误。通过其他方式,我的 docker 日志继续接收root@localhost 的相同消息....
  • 我尝试使用以下命令删除 root 密码:SET PASSWORD FOR root@localhost=PASSWORD('');并且消息已在容器日志中停止,现在我在日志中看到如下内容: 191105 14:59:43 5668 Connect root@localhost as anonymous on 。这是什么意思?
猜你喜欢
  • 2014-05-26
  • 2015-06-06
  • 2016-07-30
  • 2012-11-03
  • 2015-10-09
  • 2022-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多