这篇文章主要介绍了MariaDB中1045权限错误导致拒绝用户访问的错误解决方法,需要的朋友可以参考下
用mariadb也有一段时间了,常用命令和语法,基本没变。比较复杂一点的,例如replication,也没有发现根mysql有什么不同的地方。
不过,今天真发现有不同的地方了,mariadb的权限管理根mysql不一样,mysql可以创建一个根root账户同等权限的账户,但是mariadb就不行了,写法上也所不同。
1,mariadb grant授权报错
MariaDB [(none)]> grant all privileges on *.* TO tank@'192.168.%' IDENTIFIED BY 'test';
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
相同的命令在mysql下,执行是没有任何问题的。
一开始以为是mariadb的root账号和密码有问题,检查后没问题。
2,mariadb与mysql root权限不同
查看了一下,root账户所拥有的权限,mariadb和mysql是不一样的。
MariaDB [(none)]> show grants\G;
*************************** 1. row ***************************
Grants for root@localhost: GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON *.* TO 'root'@'localhost' WITH GRANT OPTION
1 row in set (0.00 sec)
ERROR: No query specified
mysql> show grants;
+---------------------------------------------------------------------+
| Grants for root@localhost |
+---------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION |
+---------------------------------------------------------------------+
1 row in set (0.00 sec)
3,mariadb与mysql grant语法不同
具体的讲法以,请参考:https://mariadb.com/kb/en/mariadb/grant/
MariaDB [(none)]> grant all on test.* TO tank@'192.168.%' IDENTIFIED BY 'test';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> grant select on *.* TO tank@'192.168.%' IDENTIFIED BY 'test';
Query OK, 0 rows affected (0.00 sec)
第一条命令,将test库的所有权限都给tank
第二条命令,将所有库和表的select权限给tank
注意:all不能和*.*一起使用的,不然就报错了。
本文标题为:MariaDB中1045权限错误导致拒绝用户访问的错误解决方法
基础教程推荐
- 在阿里云CentOS 6.8上安装Redis 2023-09-12
- mysql查询FIND_IN_SET REGEXP实践示例 2023-07-27
- SQL数据库十四种案例介绍 2023-08-12
- 还原Sql Server数据库BAK备份文件的3种方式以及常见错误总结 2023-07-29
- Redis五种数据类型详解 2023-07-13
- 关于对MongoDB索引的一些简单理解 2023-07-15
- Oracle 数据库启动过程的三阶段、停库四种模式详解 2023-07-23
- MySQL实现批量插入测试数据的方式总结 2023-08-12
- centos7中redis安装 2023-09-12
- Redis中的BigKey问题排查与解决思路详解 2023-07-13
