ERROR 1044 (42000): Access denied for user 'root'@'%' to database
发表于:2025-11-06 作者:千家信息网编辑
千家信息网最后更新 2025年11月06日,-- 2014.12.10昨天根据开发的需要,创建了几个用户,但是在授权的时候报错:ERROR 1044 (42000): Access denied for user 'root'@'%' to d
千家信息网最后更新 2025年11月06日ERROR 1044 (42000): Access denied for user 'root'@'%' to database-- 2014.12.10
昨天根据开发的需要,创建了几个用户,但是在授权的时候报错:
ERROR 1044 (42000): Access denied for user 'root'@'%' to database 'mdm'
在网上搜了一下,大概有以下几种说法:
1、对该数据库权限不足。
2、参数问题。
3、user的user列存在空值记录。
以上的解决方法基本上都是需要重启MySQL、而且都是片面的。
这里解释一下,出现这种情况的原因。
首先这里是用root用户操作,所以对这个数据库的权限绝对是最高级的,但是如果是非root用户操作,就可能是权限的问题,需要root用户授权。
出现上面的报错,很可能,其实应该可以说基本上都是因为my.cnf 文件里面有skip-name-resolve参数,这个参数导致这不能解析hostname或其它方式的登录, 所以登录任何用户,匹配的时候不走root@'localhost',或者127.0.0.1或者::1 ,而是 一个劲的走root@'%'.
再来查看一下每种方式下的root用户的具体权限:
一般情况还有Host:127.0.0.1、Host:localhost我的里面把哪两种删了。
请注意 !
注意上面每条记录的的红色字体部分Grant_priv: Y
这个表示,以这种方式解析登录的root用户,是否有grant权限,Y则表示有授权限给其他用户的权限,N表示没有。
这里恰好,就是我们要找的原因,因为我的/my.cnf文件里面有skip-name-resolve参数,所以root都是解析到@'%'方式登录,于是就没有grant_priv权限。
解决方法:
1、在不重启MySQL服务的情况下,只需要在登录的时候加上-h参数。
例如:(a). /usr/local/mysql/bin/mysql -uroot -p123456 -h::1
(b)./usr/local/mysql/bin/mysql -uroot -p123456 -h227.0.0.1
2、需要重启MySQL。把skip-name-resolve参数去掉 ---- 还没验证。不过我记得,如果去掉了,日志里面会有大量的警告信息。我是因为那些警告信息,才添加的这个参数。
昨天根据开发的需要,创建了几个用户,但是在授权的时候报错:
ERROR 1044 (42000): Access denied for user 'root'@'%' to database 'mdm'
在网上搜了一下,大概有以下几种说法:
1、对该数据库权限不足。
2、参数问题。
3、user的user列存在空值记录。
以上的解决方法基本上都是需要重启MySQL、而且都是片面的。
这里解释一下,出现这种情况的原因。
首先这里是用root用户操作,所以对这个数据库的权限绝对是最高级的,但是如果是非root用户操作,就可能是权限的问题,需要root用户授权。
出现上面的报错,很可能,其实应该可以说基本上都是因为my.cnf 文件里面有skip-name-resolve参数,这个参数导致这不能解析hostname或其它方式的登录, 所以登录任何用户,匹配的时候不走root@'localhost',或者127.0.0.1或者::1 ,而是 一个劲的走root@'%'.
再来查看一下每种方式下的root用户的具体权限:
- mysql> select * from user\\G;
- *************************** 1. row ***************************
- Host: bidevedw\\_db
- User: root
- Password: *D013A4E3A5BB01E4239D18D7E93B59B7D2B767AD
- Select_priv: Y
- Insert_priv: Y
- Update_priv: Y
- Delete_priv: Y
- Create_priv: Y
- Drop_priv: Y
- Reload_priv: Y
- Shutdown_priv: Y
- Process_priv: Y
- File_priv: Y
- Grant_priv: Y
- References_priv: Y
- Index_priv: Y
- Alter_priv: Y
- Show_db_priv: Y
- Super_priv: Y
- Create_tmp_table_priv: Y
- Lock_tables_priv: Y
- Execute_priv: Y
- Repl_slave_priv: Y
- Repl_client_priv: Y
- Create_view_priv: Y
- Show_view_priv: Y
- Create_routine_priv: Y
- Alter_routine_priv: Y
- Create_user_priv: Y
- Event_priv: Y
- Trigger_priv: Y
- Create_tablespace_priv: Y
- ssl_type:
- ssl_cipher:
- x509_issuer:
- x509_subject:
- max_questions: 0
- max_updates: 0
- max_connections: 0
- max_user_connections: 0
- plugin:
- authentication_string:
- password_expired: N
- *************************** 2. row ***************************
- Host: ::1
- User: root
- Password: *D013A4E3A5BB01E4239D18D7E93B59B7D2B767AD
- Select_priv: Y
- Insert_priv: Y
- Update_priv: Y
- Delete_priv: Y
- Create_priv: Y
- Drop_priv: Y
- Reload_priv: Y
- Shutdown_priv: Y
- Process_priv: Y
- File_priv: Y
- Grant_priv: Y
- References_priv: Y
- Index_priv: Y
- Alter_priv: Y
- Show_db_priv: Y
- Super_priv: Y
- Create_tmp_table_priv: Y
- Lock_tables_priv: Y
- Execute_priv: Y
- Repl_slave_priv: Y
- Repl_client_priv: Y
- Create_view_priv: Y
- Show_view_priv: Y
- Create_routine_priv: Y
- Alter_routine_priv: Y
- Create_user_priv: Y
- Event_priv: Y
- Trigger_priv: Y
- Create_tablespace_priv: Y
- ssl_type:
- ssl_cipher:
- x509_issuer:
- x509_subject:
- max_questions: 0
- max_updates: 0
- max_connections: 0
- max_user_connections: 0
- plugin:
- authentication_string:
- password_expired: N
- *************************** 3. row ***************************
- Host: %
- User: root
- Password: *D013A4E3A5BB01E4239D18D7E93B59B7D2B767AD
- Select_priv: Y
- Insert_priv: Y
- Update_priv: Y
- Delete_priv: Y
- Create_priv: Y
- Drop_priv: Y
- Reload_priv: Y
- Shutdown_priv: Y
- Process_priv: Y
- File_priv: Y
- Grant_priv: N
- References_priv: Y
- Index_priv: Y
- Alter_priv: Y
- Show_db_priv: Y
- Super_priv: Y
- Create_tmp_table_priv: Y
- Lock_tables_priv: Y
- Execute_priv: Y
- Repl_slave_priv: Y
- Repl_client_priv: Y
- Create_view_priv: Y
- Show_view_priv: Y
- Create_routine_priv: Y
- Alter_routine_priv: Y
- Create_user_priv: Y
- Event_priv: Y
- Trigger_priv: Y
- Create_tablespace_priv: Y
- ssl_type:
- ssl_cipher:
- x509_issuer:
- x509_subject:
- max_questions: 0
- max_updates: 0
- max_connections: 0
- max_user_connections: 0
- plugin: mysql_native_password
- authentication_string:
- password_expired: N
- *************************** 4. row ***************************
- Host: %
- User: u_mdm_r2
- Password: *CCB51F609423C18692BB961A7A83342B8311B6F4
- Select_priv: N
- Insert_priv: N
- Update_priv: N
- Delete_priv: N
- Create_priv: N
- Drop_priv: N
- Reload_priv: N
- Shutdown_priv: N
- Process_priv: N
- File_priv: N
- Grant_priv: N
- References_priv: N
- Index_priv: N
- Alter_priv: N
- Show_db_priv: N
- Super_priv: N
- Create_tmp_table_priv: N
- Lock_tables_priv: N
- Execute_priv: N
- Repl_slave_priv: N
- Repl_client_priv: N
- Create_view_priv: N
- Show_view_priv: N
- Create_routine_priv: N
- Alter_routine_priv: N
- Create_user_priv: N
- Event_priv: N
- Trigger_priv: N
- Create_tablespace_priv: N
- ssl_type:
- ssl_cipher:
- x509_issuer:
- x509_subject:
- max_questions: 0
- max_updates: 0
- max_connections: 0
- max_user_connections: 0
- plugin: mysql_native_password
- authentication_string:
- password_expired: N
- ERROR:
- No query specified
- mysql>
一般情况还有Host:127.0.0.1、Host:localhost我的里面把哪两种删了。
请注意 !
注意上面每条记录的的红色字体部分Grant_priv: Y
这个表示,以这种方式解析登录的root用户,是否有grant权限,Y则表示有授权限给其他用户的权限,N表示没有。
这里恰好,就是我们要找的原因,因为我的/my.cnf文件里面有skip-name-resolve参数,所以root都是解析到@'%'方式登录,于是就没有grant_priv权限。
解决方法:
1、在不重启MySQL服务的情况下,只需要在登录的时候加上-h参数。
例如:(a). /usr/local/mysql/bin/mysql -uroot -p123456 -h::1
(b)./usr/local/mysql/bin/mysql -uroot -p123456 -h227.0.0.1
2、需要重启MySQL。把skip-name-resolve参数去掉 ---- 还没验证。不过我记得,如果去掉了,日志里面会有大量的警告信息。我是因为那些警告信息,才添加的这个参数。
权限
用户
参数
登录
方式
情况
时候
信息
原因
数据
数据库
文件
方法
问题
最高
这不
字体
就是
日志
是在
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全教育主题会一年级班
闲鱼怎么做数据库
软件开发城市选哪个好
平面设计和网络技术的区别
王者荣耀国际服选哪个服务器好
最常用的一个小型数据库管理系统
保护孩子网络安全的英语作文
软件开发多久跳槽
网络安全和审核工具是什么
家用网络显示服务器无响应
数据库课程设计jsp
酒店电脑网络安全管理规定
钣金放样软件开发
数据库怎么导出多表
同道中人深圳互联网科技有限公司
esi数据库全国排名
mac ssh 服务器
计算机及网络安全保密培训课件
中国互联网科技股份有限公司
中国上市软件开发公司排行
服务器 五舟
登录器为什么没有服务器列表
服务器电脑配置使用
运营商保存数据库多久
discuz 数据库前缀
数据库商品的表一般有几项
培训计算机网络技术有限公司
湖北电子商务软件开发
软件开发生产环境
天气预报数据库系统