设置mysqlroot密码 root用户设密码后不用密码还能登陆 用密码会报错:1045-Access denied for user 'root'@'localhost'

修改密码报错:ERROR):Accessdeniedforuserroot@localhost(usingpassword:YES
root密码重置报错:mysqladmin: connect to server at
'localhost' failed的解决方案!修改密码报错:ERROR ): Access denied for user
'root'@'localhost' (using password: YES)
在Linux下修改密码的正确的唯一的操作,其他百度的都是瞎jb扯淡。
1,vim&/etc/my.cnf,增加skip-grant-tables
2,重启mysql服务:
3,mysql免密码登录
4,首先查看当前root用户相关信息,在mysql数据库的user表中;select host, user, authentication_string,
host: 允许用户登录的ip‘位置’%表示可以远程;
user:当前数据库的用户名;
authentication_string: 用户密码;在mysql 5.7.9以后废弃了password字段和password()函数;
密码加密方式;
5,如果当前root用户authentication_string字段下有内容,先将其设置为空;
user set authentication_string='' where
user='root';&
6,退出mysql, 删除/etc/my.cnf文件最后的
skip-grant-tables
重庆mysql服务;
7,使用root用户进行登录,因为上面设置了authentication_string为空,所以可以免密码登录;
passwrod:直接回车;&
8,使用ALTER修改root用户密码:ALTER&user&'root'@'localhost'&IDENTIFIED&BY&'Qian123#';
至此修改成功;
从新使用用户名密码登录即可;
转载内容来自:
https://www.cnblogs.com/jjg0519/p/9034713.html
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。下次自动登录
现在的位置:
& 综合 & 正文
mysql 重新修改密码 以及ERROR 1045: Access denied for user: ‘root@localhost’ (Using password: YES)问题解决
今天有个课程设计项目要做 要使用mysql数据库 照往常一样命令行 mysql -u root -p 想打开数据库创建表 但是老是提示打不开
因为自己以前用过mysql
后面因为学习php又装了一个wampserver(这个里面自带有 mysql 和 phpmyadmin)
刚开始还以为是系统把自己以前装的mysql和这个wampserver的mysql搞混了
于是就想通过命令行定位到具体的mysql 根目录下的bin目录来打开mysql 。
wampserver下面的mysql 在命令行定位到它的bin下面 刚开始的时候还是打不开 但是我记得密码明明是对的啊 于是google了一下 网上说 这个wampserver 自带的mysql默认是 root 登录 密码为空 于是赶紧试一下 : mysql -u root -p 然后在提示Enterpassword:时直接回车 果然登录成功了。这会才知道刚刚那个密码是以前用过的mysql的密码 于是同样定位到以前那个mysql的bin目录下 提示Enterpassword:按自己记得的那个密码输入 输入了好几篇还是提示进不去
于是就郁闷了
又开始google
google 上找到这么在不知道mysql密码的情况可以修改密码的方法
首先 创建一个文本文件,将下述命令置于单一行中:
SET PASSWORD FOR ‘root’@'localhost' = PASSWORD('MyNewPassword');
用任意名称保存该文件,在本例中,该文件为c:/mysql-init.txt.
第二步:进入DOS命令提示:开始菜单-&运行-&cmd
假定你已将MYSQL安装在c:/mysql。如果你将MYSQL安装在另一位置,请对下述命令进行相应的调整。
在DOS命令提示符下,执行命令:
c:/mysql/bin/&mysqld-nt --init-file=c:/mysql-init.txt
在服务器启动时,执行由“--init-file”选项(作用:在启动时从指定的文件中读取SQL命令)命名的文件的内容,更改根用户密码。当服务
器成功启动后,应删除C:/mysql-init.txt。
如果起动MySQL服务器出错,把进程mysqld-nt.exe关闭。然后重启它,OK。
或者停止MySQL服务器,然后在正常模式下重启它。如果以服务方式运行服务器,应从Windows服务窗口启动它。如果以手动方式启动了服务器,能够像正常情形下一样使用命令。
应能使用新密码进行连接
-----------------------------------------------------------------------------------------------------------------------------------------------------
接下来:想运行phpMyAdmin 但是老是提示:ERROR 1045: Access denied for user:
(Using password: YES)
查看了一下:$cfg['Servers'][$i]['password']
= '123456';
但是刚刚那个mysql是空密码登录的
所以就把这个改为空密码 重新登录 但是没有成功 就是
在命令行先用空密码登录进入 然后修改密码
mysql&use mysql &update user set password=password("new_password") where user="root"; & &exit
然后修改phpmyadmin 的$cfg['Servers'][$i]['password']
= 'new_password';
重新运行了一下 phpmyadmin 一看还是报:#1045 的错误
于是刷新了一下网页 果然 登录成功了,呵呵呵
下面是网络资源汇集
mysql重新修改密码:
在windows下: 打开命令行窗口,停止mysql服务:
Net stop mysql 启动mysql,一般到mysql的安装路径,找到 mysqld-nt.exe 执行:mysqld-nt --skip-grant-tables 当前窗口将会停止。 另外打开一个命令行窗口,执行mysql
如果提示没有这个命令,先进入MYSQL的安装位置下BIN目录再运行mysql&use mysql &update user set password=password("new_password") where user="root"; & &exit
用Ctrl+Alt+Del,找到mysqld-nt的进程杀掉它,在重新启动mysql-nt服务,就可以用新密码登录了
在linux下: 如果 MySQL 正在运行,首先杀之: killall -TERM mysqld。 启动 MySQL :bin/safe_mysqld --skip-grant-tables & 就可以不需要密码就进入 MySQL 了。 然后就是 &use mysql &update user set password=password("new_pass") where user="root"; & 重新杀 MySQL ,用正常方法启动 MySQL 。
ERROR 1045: Access denied for user: 'root@localhost' (Using password: YES)
ERROR 1045: Access denied for user: 'root@localhost' (Using password: YES)
前两天也偶尔出现这个错误,也没在意,因为我重新修改一下mysql的root密码后又可以用了,但昨天却不行,我把root密码修改以后虽然当时能用,一旦重新进入就都不能用了,可我的密码明明没有错啊?今天终于找到了原因,是权限问题,大家可以参考着下面两篇文章去看一下: http://topic.csdn.net/t//4521496.html# http://doc.99net.net/doc/database//.html 由于以前从来没有遇到过这种情况,故把解决方法记录于此,以便今后自己查阅,具体方法就是你在改root密码的时候再加上一句给权限的语句:
grant all on mysql.* to 'root'@'localhost' identified by 'password';
最后那个password即是你要修改的root用户的密码
刚开始用mysql就给我来了个下马威,前些天完整完数据库后安装手册修改了一下root用户的密码,然后用root用户再登陆是一切OK。可是今天再登陆时就报1045错误代码。 错误代码
Access denied for user 'root'@'localhost' (using password:YES)
我的解决办法是重新设置root用户密码,在Windows平台下操作步骤如下:
1、以系统管理员身份登录到系统;
2、如果MySQL服务器正在运行,停止它。
如果是作为Windows服务运行的服务器,进入服务管理器:开始菜单-&控制面板-&管理工具-&服务
如果服务器不是作为服务而运行的,可能需要使用任务管理器来强制停止它。
3、创建1个文本文件,并将下述命令置于单一行中:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');
用任意名称保存该文件。在本例中,该文件为C:/mysql-init.txt。
4、进入DOS命令提示:开始菜单-&运行-& cmd
假定你已将MySQL安装到C:/mysql。如果你将MySQL安装到了另一位置,请对下述命令进行相应的调整。
在DOS命令提示符下,执行命令:
C:/mysql/bin/&mysqld-nt --init-file=C:/mysql-init.txt
在服务器启动时,执行由“--init-file”选项(作用:在启动时从指定的文件中读取SQL命令)命名的文件的内容,更改根用户密码。当服务器成功启动后,应删除C:/mysql-init.txt。
5、如果起动MySQL服务器出错,把进程mysqld-nt.exe关闭。然后重启它,OK。
6、或者停止MySQL服务器,然后在正常模式下重启它。如果以服务方式运行服务器,应从Windows服务窗口启动它。如果以手动方式启动了服务器,能够像正常情形下一样使用命令。
应能使用新密码进行连接。
【上篇】【下篇】我的MYSQL我设置了密码的,为什么现在linux下不输密码能进去,输入正确的密码反而报错,而且进入后查看数据库只能看到两个库,其他库看不到
[问题点数:20分,结帖人sinat_]
本版专家分:0
结帖率 70%
CSDN今日推荐
本版专家分:0
本版专家分:0
本版专家分:0
本版专家分:0
匿名用户不能发表回复!|
其他相关推荐新装MySql后登录出现root帐号提示mysql ERROR ): Access denied for use的解决办法
转载 &更新时间:日 11:06:00 & 作者:侠之大者为国为民
这篇文章主要介绍了新装MySql后登录出现root帐号提示mysql ERROR ): Access denied for use的解决办法,需要的朋友可以参考下
新装MySQL后,首次执行 mysql -uroot -p 后会发现root密码不为空,要重置root密码请参考以下步骤。
编辑mysql配置文件my.ini(如果是my_default.ini请改名为my.ini),在[mysqld]这个条目下加入
skip-grant-tables
保存退出后重启mysql,点击“开始”-&“运行”(快捷键Win+R)。
1.停止:输入 net stop mysql
2.启动:输入 net start mysql
这时候在cmd里面输入mysql -u root -p就可以不用密码登录了,出现password:的时候直接回车可以进入,不会出现ERROR ),但很多操作都会受限制,因为我们不能grant(没有权限)。按下面的流程走:
1.进入mysql数据库:
Database changed
2.给root用户设置新密码,蓝色部分自己输入:
mysql& update user setauthentication_string=password("新密码") where user="root";
Query OK, 1 rows affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0
3.刷新数据库
Query OK, 0 rows affected (0.00 sec)
4.退出mysql:
mysql& quit
改好之后,再修改一下my.ini这个文件,把我们刚才加入的"skip-grant-tables"这行删除,保存退出再重启mysql就可以了。
再次重新登录后会提示你
ERROR 1820 (HY000): You must reset your password using ALTER USER statement befo re executing this statement.
只要输入 set password=password('新密码'); 即可
以上所述是小编给大家介绍的新装MySql后登录出现root帐号提示mysql ERROR ): Access denied for use的解决办法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
您可能感兴趣的文章:
大家感兴趣的内容
12345678910
最近更新的内容
常用在线小工具只是为了记录
Mac使用mysql中出现ERROR 1045: Access denied for user: 'root@localhost' 以及密码过期解决方法
昨天学数据库,安装的时候完全没看到设置密码的地方…
然后登陆不进去,一直出现ERROR 1045: Access denied for user: ‘root@localhost’报错
找了一晚上资料终于找到一个可行的解决办法,分享一个。
1. 用安全模式进入数据库
1.1 打开系统偏好设置,如果你的电脑已经安装mysql,会在下面有一个mysql的按钮。点进去关闭mysql服务。
1.2 打开一个终端,输入一下命令
$ cd /usr/local/mysql/bin
然后便可以看到终端命令变成这个开头:
输入一下命令
之后边可以以安全模式进入数据库了。
1.3 现在打开一个新的终端
输入以下命令:
mysql -u -root
然后便会发现你不需要密码就进入数据库了。
2. 修改密码
现在可以看到终端命令变成以mysql开头。
修改密码这一部分在网上找了很多教程都不对,应该是因为版本不同的问题。
我装的最新的mysql,测试以后一下这个方法可行。
接着之前的步骤,在mysql命令下。输入以下命令
UPDATE mysql.user SET authentication_string = PASSWORD('MyNewPass')
WHERE User = 'root' AND Host = 'localhost';
FLUSH PRIVILEGES;
这样就成功更改密码了。
之后退出mysql,输入以下命令退出安全模式。
/usr/local/mysql/share/mysql.server start
然后在终端输入
$mysql -u root -p
进入数据库。
这个时候我还遇到一个问题,就是显示说我的代码过期了。
错误如下:
#1862 - Your password has expired. To log in you must change it using a client that supports expired passwords.
解决这个问题只需要重新更改一下密码即可。
在终端输入以下命令,会让你输入老密码和新密码。
/usr/local/mysql/bin/mysqladmin -u root -p password
Enter password:
New password:
Confirm new password:
之后再用新密码进入mysql就大功告成啦!
错误代码#1045 Access denied for user 'root'@'localhost' (using password:YES)
mac电脑 ERROR 1045 (28000): Access denied for user 'username'@'localhost' (using password: YES)问题解决办法
MYSQL错误代码#1045 Access denied for user 'root'@'localhost'
解决MySQL登录ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using passwor)问题
mysql Access denied for user root@localhost错误解决方法总结
ERROR 1045 : Access denied for user 'ODBC'@'localhost' (using password: NO)
解决Mysql ERROR 1045 (28000): Access denied for user 'root'@'localhost'(using password: YSE)
centos7 上安装mysql5.7后登录报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using pas
完整过程解决 ERROR 1045 (28000): Access denied for user 'mysql'@'localhost' (using password: NO)
在linux系统中安装mysql服务器详细步骤并解决ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using passw
没有更多推荐了,

我要回帖

更多关于 mysql8.0修改root密码 的文章

 

随机推荐