博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
mysql ERROR 1044 (42000): Access denied for user ''@'localhost' to database
阅读量:7158 次
发布时间:2019-06-29

本文共 2414 字,大约阅读时间需要 8 分钟。

新安装的mysql密码是空的。

 

./mysql -u root -p

use mysql
SELECT `Host`,`User` FROM user;
UPDATE user SET `Host` = '%' WHERE `User` = 'root' LIMIT 1;
FLUSH PRIVILEGES;

GRANT ALL PRIVILEGES ON *.* TO 'mysql'@'%' IDENTIFIED BY 'test' WITH GRANT OPTION;

 

方法一:
1.关闭mysql
   # service mysqld stop
2.屏蔽权限
   # mysqld_safe --skip-grant-table
   屏幕出现: Starting demo from .....
3.新开起一个终端输入
   # mysql -u root mysql
   mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
   mysql> FLUSH PRIVILEGES;//记得要这句话,否则如果关闭先前的终端,又会出现原来的错误
   mysql> \q

 

 
方法
mysql> use mysqlERROR 1044 (42000): Access denied for user 'root'@'localhost' to database 'mysql'mysql> exitBye[root@testtest ~]# service mysqld stop Stopping mysqld:                      [ OK ][root@testtest ~]# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &  [root@testtest ~]# mysql -u root -p -hlocalhostEnter password:  mysql> use mysql mysql> SELECT host,user,password,Grant_priv,Super_priv FROM mysql.user; mysql> UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE User='root'; mysql> FLUSH PRIVILEGES; mysql> GRANT ALL ON *.* TO 'root'@'localhost'; mysql> GRANT ALL ON *.* TO 'root'@'cn.cn.cn.cn'; mysql> GRANT ALL ON *.* TO 'root'@'245.245.245.245'; mysql> GRANT ALL ON *.* TO 'root'@'127.0.0.1'; mysql> FLUSH PRIVILEGES;  mysql> quitBye[root@testtest ~]# service mysqld start

 

 

方法三:

在my.ini的[mysqld]字段加入: 
skip-
grant
-tables
重启mysql服务,这时的mysql不需要密码即可登录数据库
然后进入mysql 
mysql>use mysql;
mysql>
update
user
set
password
=
password
(
'新密码'
)
WHERE
User
=
'root'
;
mysql>flush
privileges
;
运行之后最后去掉my.ini中的skip-grant-tables,重启mysqld即可。
 
 
 
 
mysql> use mysql
ERROR 1044 (42000): Access denied
for
user
'root'
@
'localhost'
to
database
'mysql'
mysql> exit
Bye
[root@testtest ~]# service mysqld stop
Stopping mysqld:                      [ OK ]
[root@testtest ~]# mysqld_safe
--user=mysql --skip-grant-tables --skip-networking &
 
[root@testtest ~]# mysql -u root -p -hlocalhost
Enter
password
:
 
mysql> use mysql
 
mysql>
SELECT
host,
user
,
password
,Grant_priv,Super_priv
FROM
mysql.
user
;
 
mysql>
UPDATE
mysql.
user
SET
Grant_priv=
'Y'
, Super_priv=
'Y'
WHERE
User
=
'root'
;
 
mysql> FLUSH
PRIVILEGES
;
 
mysql>
GRANT
ALL
ON
*.*
TO
'root'
@
'localhost'
;
 
mysql>
GRANT
ALL
ON
*.*
TO
'root'
@
'cn.cn.cn.cn'
;
 
mysql>
GRANT
ALL
ON
*.*
TO
'root'
@
'245.245.245.245'
;
 
mysql>
GRANT
ALL
ON
*.*
TO
'root'
@
'127.0.0.1'
;
 
mysql> FLUSH
PRIVILEGES
;
 
 
mysql> quit
Bye
[root@testtest ~]# service mysqld start

转载地址:http://woegl.baihongyu.com/

你可能感兴趣的文章
我的友情链接
查看>>
spring--
查看>>
SWAP 交换分区管理
查看>>
LoadRunner测试脚本
查看>>
ELK-kibana
查看>>
linux正则表达式
查看>>
PHP_014 错误和异常
查看>>
红黑树
查看>>
SuSE11安装MySQL5.6.40:编译安装方式、单实例
查看>>
CentOS6编译LAMP基于FPM模式的应用wordpress
查看>>
自定义TabBar
查看>>
c#设计模式-单例模式
查看>>
指针数组和数组指针
查看>>
win7升级nodejs8
查看>>
http断点续传
查看>>
悬浮显示input中所有的内容及css处理文字过长时显示为多余部分省略
查看>>
无线覆盖项目初步地勘——高校案例
查看>>
Hadoop MapReduce 处理2表join编程案例
查看>>
分布式存储-FastDFS
查看>>
iOS界面布局之三——纯代码的autoLayout及布局动画
查看>>