mysql mariadb 创建mysql mariadb用户,登录报错

2023-11-08

mysql mariadb 创建energy普通用户,登录mysql报错 :access denied

GRANT REPLICATION CLIENT,PROCESS,SELECT ON *.* TO 'mysqld_exporter'@'%' identified by '123';

解决办法:

  1. 登录mysql 查看用户表
mysql -uroot -pPote123
select user,host,password from mysql.user;


发现有两条用户为空的记录

  1. 删除匿名用户
drop user ''@'localhost';
drop user ''@'gxkt-app2';
quit
systectl restart mariadb

登录成功

  1. 分析理解

mysql默认host为localhost,由于mysql的规则是host优先级比user高,所以会先匹配host,mysql就会去用户表里取 host=localhost的数据进行认证,所以普通用户energy的记录当然就被过滤掉了,因而也就登录不上了。
那么有人会问%不是可以匹配所有的ip吗,那么应该也可以匹配localhost啊?是的,%可以匹配localhost,但是这里涉及到一个优先级的问题,匹配到了localhost就不会继续匹配%

mysql -uroot -pPote123

登录mysql,mysql的匹配逻辑是这样的:
(1) 匹配host,匹配成功(匹配到一条或多条)就进入下一步
(2) 匹配user,匹配到第一条后停止,进入下一步
(3) 有匹配验证密码,没有密码提示输入密码
匿名用户的user为空(‘’),是可以匹配所有字符的,所以只要有匿名用户存在,其余普通用户在本机是登录不上的。

  • 使用普通用户登录匹配过程
mysql -uenergy -pPote123

| root   | localhost | *588C4F8219256889231F450E881100ED8F2D8D6C |
|        |  localhost | 

(1)匹配host,匹配到以上两条记录host=localhost
(2)匹配user,匹配到energy,匹配到一条记录空(空字符可以匹配所有的字符)
(3)匹配password ,匹配失败,返回access denied

  • 使用root用户登录匹配过程
mysql -uenergy -pPote123

(1)匹配host,匹配到以上两条记录host=localhost
(2)匹配user,匹配到root,匹配到一条记录空(空字符可以匹配所有的字符)
(3)匹配password ,匹配成功。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mysql mariadb 创建mysql mariadb用户,登录报错 的相关文章

  • 通过我的java代码导出数据库

    我想使用我的 java 代码导出我的 MySQL 数据库 但我还没有找到任何办法 我想要做的就是我的应用程序中有一个按钮作为 导出数据库 单击该按钮时 我的数据库应导出到指定的路径 我使用了以下代码 但它不起作用 Runtime runti
  • 使用mysql在一个查询中选择多个表中的子项总数

    我整个下午都在尝试处理一个查询 或两个或三个 以获得三个表的所有子表的计数 看看我的设计 用户表 id user name 1 foo 2 bar 赢表 id won user 1 1 2 1 3 2 绘制表格 id draw user 1
  • 如何使PHP中的激活链接过期?

    我有一个 php 脚本 它通过电子邮件向用户发送激活链接 以便他们可以激活他们的帐户 链接是这样的 mysite com activation phpid id 20 如何创建 24 小时后过期的链接 我还没有尝试过任何东西 因为我找不到任
  • MySQL 与 PHP 的连接无法正常工作

    这是我的情况 我正在尝试使用 Apache 服务器上的 PHP 文件连接到 MySQL 数据库 现在 当我从终端运行 PHP 时 我的 PHP 可以连接到 MySQL 数据库 使用 php f file php 但是当我从网页执行它时 它只
  • mysql语句中的*星号是什么意思?

    Ex mysql query SELECT FROM members WHERE id id 这意味着选择表中的所有列
  • 通过货币换算获取每种产品类型的最低价格

    我想选择每种产品类型中最便宜的 包括运费 价格转换为当地货币 最便宜 产品 价格 产品 运费 seller to aud 我的数据库有如下表 PRODUCTS SELLERS id type id seller id price shipp
  • 在docker中使用MySQL数据库设置aspnetcore

    我正在尝试设置一个 docker compose 文件 其中包含 asp net core mysql 数据库和 phpmyadmin 的容器 设置我的 mysql 服务器没有问题 我可以使用 phpmyadmin 访问它 我的 asp n
  • 将 UPDATE 转换为 INSERT INTO ON DUPLICATE KEY UPDATE 语句

    我有这个 UPDATE MySQL 语句 效果很好 UPDATE table1 Inner Join table2 ON table2 id table1 gw id SET table1 field1 1 table1 field2 2
  • MySQL 全文搜索不适用于某些单词,例如“house”

    我已经在 3 个字段中的一小部分记录上设置了全文索引 也尝试了 3 个字段的组合 并得到了相同的结果 有些单词返回结果很好 但某些单词如 house 和 澳大利亚 不这样做 有趣的是 澳大利亚 和 家乡 这样做 这似乎是奇怪的行为 如果我添
  • 在 MacOSX10.6 上运行 python 服务器时 MySQLdb 错误

    运行我的服务器 python manage py runserver 产生以下错误 django core exceptions ImproperlyConfigured 加载 MySQLdb 模块时出错 没有名为 MySQLdb 的模块
  • 对于数据库来说,选择正确的数据类型会影响性能吗?

    如果是这样 为什么 我的意思是 tinyint 的搜索速度比 int 快吗 如果是这样 性能上的实际差异是什么 是的 根据数据类型 它确实有所不同 int vs tinyint不会在速度上产生明显的差异 但会在数据大小上产生差异 假设tin
  • 如何在 phpmyadmin 中创建 MySQL 触发器

    我想在 MySQL 中创建一个触发器 我运行以下命令 mysql gt delimiter mysql gt CREATE TRIGGER before insert money BEFORE INSERT ON money gt FOR
  • 显示表 FULLTEXT 索引列

    我希望运行一个查询 该查询将返回表中全文索引的列列表 该表采用 MyISAM 格式 我将使用 php 来构建查询 理想情况下 我会运行查询 它会返回信息 以便我可以构造一个以逗号分隔的列字符串 例如 名 姓 电子邮箱 这在 MySQL 中可
  • Mysql innoDB 不断崩溃[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我的数据库 mysql 服务器不断崩溃 重新启动 我不知道该怎么办 我不断在 dbname org err 文件中收到以下内容 13120
  • MYSQL - 查找最近的前一天

    我可以以某种方式 不使用 PHP 找到一周中最近的前一天日期吗 Like 最近的上一个星期二的日期是哪一天 CURDATE INTERVAL WEEKDAY CURDATE wday IF WEEKDAY CURDATE gt wday 0
  • mysql-如何向列申请补助?

    用户名 撤销对数据库的选择 Person I set GRANT SELECT id ON database Person TO username localhost 不是工作 gt SELECT secret FROM Person Go
  • 如何在 Laravel 查询中使用多个 OR,AND 条件

    我需要 Laravel 查询帮助 我的自定义查询 返回正确结果 Select FROM events WHERE status 0 AND type public or type private 如何写这个查询Laravel Event w
  • 当sql连接中存在两个同名列时,如何从一个表列中获取值

    当我连接两个具有相同名称列的表时 我目前面临着尝试获取值的问题 例如 table1 date和table2 date 每个表中的日期不同 我将如何获取 日期 本例中的表1 我目前正在跑步 while row mysqliquery gt f
  • InnoDB 因读未提交而死锁! - Java - Glassfish - EJB3(JPA/Hibernate)

    几天来 我在使用 Glassfish EJB3 和 Mysql InnoDB 的 Java 应用程序上遇到了死锁问题 配置 Mysql InnoDB Ver 14 12 Distrib 5 0 51a 适用于 debian linux gn
  • MySQL 按重复项从上到下排序

    我有一个lammer问题 因为我不是mysql专业人士 我有类似的字段 id color 1 red 2 green 3 yellow 4 green 5 green 6 red 我想按重复项进行分组 最常见的重复项先进行分组 所以应该这样

随机推荐

  • FFT频谱分析原理

    FFT频谱分析原理 采样定理 采样频率要大于信号频率的两倍 N个采样点经过FFT变换后得到N个点的以复数形式记录的FFT结果 假设采样频率为Fs 采样点数为N 那么FFT运算的结果就是N个复数 或N个点 每一个复数就对应着一个频率值以及该频
  • 内外网电脑远程桌面教程(win10)

    内网远程桌面连接 1 要远程的用户必须有密码 设置本机固定ip 自行百度 2 关闭防火墙与修改 在 控制面板 Windows 防火墙 启用或关闭Windows防火墙 3 打开远程桌面设置 在 桌面 计算机 上右击 打开 属性 远程设置 然后
  • linux 的configure --prefix=/

    linux configure prefix 是 编译指定程序存放路径 不指定prefix 可执行文件默认shu放在 usr local bin 库文件默认放在 usr local lib 配置文件默认放在 usr local etc 其它
  • maven deploy plugin_(转)maven内部运行原理解析(一)

    原文来源于 http www jianshu com p 0fb5e3fb704d maven至今还是Java编程语言构建的事实标准 大部分项目还在使用maven来进行构建 因此了解maven内部运行的原理对定位和分析问题还是很有裨益的 本
  • @ComponentScan配置扫描多个包

    我的Spring版本是5 2 6 使用 ComponentScan扫描多个包的注解配置 Configuration ComponentScan basePackages bean dao service public class TxCon
  • js多方框输入密码_js 如何实现密码输入时,明文显示一秒后变成密文呢?

    function MaskedPassword passfield symbol if typeof document getElementById undefined typeof document styleSheets undefin
  • 解决windows下面的工程导入ubuntu下eclipse中文乱码

    把Windows下的工程默认GBK编码的 而Ubuntu默认是不支持GBK编码的 所以把windows下eclipse里面创建的工程导入到ubuntu下的eclipse里面 中文肯定会乱码 如果需要ubuntu支持GBK 可做如下修改 一
  • SpringSecurity学习笔记(二)加载的Filter,默认配置

    参考视频 编程不良人 SpringSecurity中的过滤器 以上图片来自官网 Security过滤器通过SecurityFilterChain API插入FilterChainProxy 过滤器的顺序很重要 通常不需要知道Spring S
  • ChatGPT对于留学生带来了哪些影响?留学生又应该如何使用?

    悉尼大学的赶DUE高峰期来得总是那么早 才开学四周 图书馆就已经被赶DUE人占领地满满当当 面对即将到来的大批量写作任务 不少同学们打起了ChatGPT的主意 2022年11月 人工智能 AI 工具ChatGPT Chat Generati
  • IDEA 创建web项目

    IntelliJ IDEA 13 新版本发布 第一时间去官网看了下 黑色的主题 很给力 大体使用了下 对于一开始就是用eclipse的童鞋们 估计很难从eclipse中走出来 当然 我也很艰难的走在路上 首先要说一点 在IntelliJ I
  • 不如来试试看这个AI大模型 感觉速度飞快,真的还挺不错呢!

    个人主页 极客小俊 作者简介 web开发者 设计师 技术分享博主 希望大家多多支持一下 我们一起进步 如果文章对你有帮助的话 欢迎评论 点赞 收藏 加关注 介绍 它是国产新一代AI智能模型 拥有跨领域的知识和语言理解能力 能够基于自然对话方
  • SpringBoot热部署 新版idea找不到Onupdate action

    改动到了这里
  • .metadata是什么项目文件_部署springboot+vue项目文档

    一 部署linux nginx 1 部署后台代码 1 1由于本人采用的是idea工具开发 所以在terminal中mvn clean package生成对应的jar包 此jar包可去对应文件所在目录的target查找 1 2将jar复制到l
  • Java中死锁问题如何排查

    问题描述 在java程序中碰到运行未停止 如何证明是死循环还是死锁问题呢 可以使用Java中自带的命令jps l 用来查看当前运行的进程号 在使用jstack 进程号命令查看当前进程的堆栈信息 死锁代码 class DeadLockRes
  • 二进制安装K8S--etcd

    大致步骤 1 准备lunix 虚拟机两台 一台用来部署etcd apiserver 管理组建 另外一台部署worker 节点 2 操作系统初始化 3 为etcd 和APIserver 准备自签名证书 4 部署etcd 集群 5 部署mast
  • 青橙项目问题Cannot access defaults field of Properties和A child container failed during start

    项目场景 在学习黑马青橙电商项目时 用到了代码生成器 生成完代码后 再往下做的时候就出现了问题 Cannot access defaults field of Properties和A child container failed duri
  • JMeter压力测试 5分钟让你学会如何并发压测接口

    文章目录 地址 下载 启动 使用 地址 JMeter官网下载 https jmeter apache org download jmeter cgi 下载 最新款的jmeter需要java8 的支持 请自行安装jdk8或以上的版本 根据系统
  • Hive sql数据倾斜及性能优化

    一 数据倾斜问题剖析 数据倾斜是分布式系统不可避免的问题 任何分布式系统都有几率发生数据倾斜 当然数据倾斜问题是在亿级数据造成机器无法应付这么多数据 这时发生数据倾斜 最后很难算出结果 hive的原理机制是MR 在MR中最容易出现数据倾斜的
  • 《拖延心理学》

    一 拖延处理技巧汇编 1 确立一个可操作性的目标 可观察 具体而实在的 而不是那种模糊而抽象的目标 不是 我要停止拖延 而是 我要在9月1日之前打扫和整理我的车库 2 设定一个务实的目标 不要异想天开 而要从小事做起 不要过于理想化 而是要
  • mysql mariadb 创建mysql mariadb用户,登录报错

    mysql mariadb 创建energy普通用户 登录mysql报错 access denied GRANT REPLICATION CLIENT PROCESS SELECT ON TO mysqld exporter identif