MySql 修改密码后的错误快速解决方法

设置好密码后,使用数据库时出现如下错误:

ERROR 1820 (HY000): You must reset your password using ALTER USER statement befo

re executing this statement.

You must SET PASSWORD before executing this statement的解决方法

今天在MySql5.6操作时报错:You must SET PASSWORD before executing this statement解决方法,需要的朋友可以参考下

参考前文利用安全模式成功登陆,然后修改密码,等于给MySql设置了密码。登陆进去后,想创建一个数据库测试下。得到的结果确实:

ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

非常诡异啊,明明用密码登陆进去了,怎么还提示需要密码。

参考官方的一个文档,见http://dev.mysql.com/doc/refman/5.6/en/alter-user.html。如下操作后就ok了:

mysql> create database yan1;
ERROR 1820 (HY000): You must SET PASSWORD before executing this statement
mysql> SET PASSWORD = PASSWORD('123456');
Query OK, 0 rows affected (0.03 sec)
mysql> create database yan1;
Query OK, 1 row affected (0.00 sec) 

也就是用mysql> SET PASSWORD = PASSWORD('123456');这句话重新设置一次密码!大爷的,真费劲啊。

这位仁兄也遇到了相同的问题。

最近新装好的mysql在进入mysql工具时,总是有错误提示:

# mysql -u root -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) 

或者

# mysql -u root -p password 'newpassword'
Enter password:
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: YES)' 

现在终于找到解决方法了。本来准备重装的,现在不必了。

方法操作很简单,如下:

# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root' and host='root' or host='localhost';//把空的用户密码都修改成非空的密码就行了。
mysql> FLUSH PRIVILEGES;
mysql> quit # /etc/init.d/mysqld restart
# mysql -uroot -p 

Enter password: <输入新设的密码newpassword>

MySql5.6操作时报错:You must SET PASSWORD before executing this statement解决

mysql> SET PASSWORD = PASSWORD('123456');
Query OK, 0 rows affected (0.03 sec)
mysql> create database roger;
Query OK, 1 row affected (0.00 sec) 

也就是用mysql> SET PASSWORD = PASSWORD('123456');这句话重新设置一次密码!

以上所述是小编给大家介绍的MySql 修改密码后的错误快速解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

时间: 2016-11-26

mysql 5.1版本修改密码及远程登录mysql数据库的方法

mysql创建用户并授权: 格式:grant 权限 on 数据库名.表名 to 用户@登录主机 identified by "用户密码"; grant[英][grɑ:nt]   承认; 同意; 准许; 授予; 例1:允许mk用户从localhost登录 mysql> grant all on book.* to mk1@localhost identified by "123456"; #允许访问book数据库下的所有表, 只能访问book表,而且是同一个服务

mysql 修改密码和设置允许远程登录

修改的用户都以root为列. 一.拥有原来的myql的root的密码: 方法一: 在mysql系统外,使用mysqladmin # mysqladmin -u root -p password "test123" Enter password: [输入原来的密码] 方法二: 通过登录mysql系统, # mysql -uroot -p Enter password: [输入原来的密码] mysql>use mysql; mysql> update user set pass

MySQL 5.7.16 修改密码提示 ERROR 1054 (42S22): Unknown column ''password'' in ''field list''的原因

按照网上之前版本的操作,将my.ini中的skip-grant-tables注释去掉,然后在命令行中以mysql -u root -p可以直接进入,但是执行 mysql> update mysql.user set password=password('password') where user='root'; 会出现以下错误 mysql> ERROR 1054 (42S22): Unknown column 'password' in 'field list' 错误原因:mysql数据库下已

MySQL5.7.18修改密码的方法

MySQL 5.7.18中如何修改密码: 1.首先关闭MySQL服务器: 可以在任务管理器中直接关闭,也可以在cmd中关闭mysql :net stop mysql 2.打开安全模式,可以免密码登录:cmd中先跳转至安装目录下:d: cd D:\Mysql\mysql-5.7.18-winx64\bin 然后输入:mysqld --defaults-file="D:\Mysql\mysql-5.7.18-winx64\my.ini" --console --skip-grant-tab

MySQL 修改密码实例详解

MySQL 修改密码实例详解 许久不用MySQL了,今天打开HediSQL连接mysql时发现root密码忘记了,修改密码操作捣鼓了一阵子,记录一下,以备后用.(Win10本机操作) 关闭MySQL服务:net stop MySQL 以管理员身份打开cmd控制台窗口,进入MySQL所在目录的bin目录,执行mysqld --skip-grant-tables 再另开一个cmd窗口直接执行mysql命令(由于2操作已经是无需授权即可访问表,所以直接用mysql,不带用户名和密码即可登录) 切换到m

mysql修改密码的三方法和忘记root密码的解决方法

方法1: 用SET PASSWORD命令 复制代码 代码如下: mysql -u rootmysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass'); 方法2:用mysqladmin 复制代码 代码如下: mysqladmin -u root password "newpass" 如果root已经设置过密码,采用如下方法 复制代码 代码如下: mysqladmin -u root password oldpas

MySql增加用户、授权、修改密码等语句

1.新建用户. //登录MYSQL @>mysql -u root -p @>密码 //创建用户 mysql> mysql> insert into mysql.user(Host,User,Password,ssl_cipher,x509_issuer,x509_sub ject) values("localhost","pppadmin",password("passwd"),'','',''); 这样就创建了一个名为

MYSQL基础之连接MYSQL、修改密码、添加用户

一.连接MYSQL. 格式: mysql -h主机地址 -u用户名 -p用户密码 1.例1:连接到本机上的MYSQL. 首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql> 2.例2:连接到远程主机上的MYSQL.假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123.则键

php+mysql实现简单登录注册修改密码网页

对于php和mysql的连接在许多blog上都有说明,为了将mysql中的查询,修改,插入等操作掌握,本文介绍了一下如何采用mysql做一个登录注册修改密码的网页. 其中,如下 1.登录-即为对数据库中的内容给予查询,并验证html中的信息与数据库是否匹配: 2.注册-即为对数据库中的内容进行插入,注册帐号与密码: 3.修改密码-即为对数据库中的内容进行修改. 这三个操作,我用了8个php和html文本来建立 具体见代码部分 1.登录的主界面index.html: <p> </p>

PHP使用mysql与mysqli连接Mysql数据库用法示例

本文实例讲述了PHP使用mysql与mysqli连接Mysql数据库的方法.分享给大家供大家参考,具体如下: 代码很简单直接上了 <?php /** * @Author: HTL * @Description: Description */ // 降低PHP默认的错误级别 // 只显示除禁用以外的所有错误 // 解决因为PHP5.3+版本太高而导致在使用mysql_connect时出现的弃用警告"Deprecated: mysql_connect(): The mysql extensio

php基础之连接mysql数据库和查询数据

连接数据库,有三种方法 1. 常规方式: $con=mysql_connect($dbhostip,$username,$userpassword) or die("Unable to connect to the MySQL!"); $db = mysql_select_db($dbdatabasename,$con); //执行语句 $qres=mysql_query("SELECT id,GoodsName FROM user"); //提取一条数据 11 $

mysql开启远程连接(mysql开启远程访问)

复制代码 代码如下: //建议设置固定IPmysql> GRANT ALL PRIVILEGES ON *.* TO root@"8.8.8.8" IDENTIFIED BY "root";mysql> flush privileges;//修改防火墙iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

MySql安装与配置方法(MySQL添加用户、删除用户与授权)

1.安装MySql 目前MySQL有两种形式的文件,一个是msi格式,一个是zip格式的.msi格式的直接点击setup.exe就好,按照步骤进行.但是很多人下了zip格式的解压发现没有setup.exe,本人下载的也是这样的,不知道怎么安装,点哪里都没有反应.只能寻求度娘帮助,然后才了解到,这种文件的安装方式. 1)将文件解压到自己认为合适的位置. 2)在目录下新建一个my.ini(文件中已经有一个mydefault.ini文件),新建后会将原来文件的作用覆盖掉.在文件中粘贴一下代码: [my

Centos7学习之添加用户和用户组的方法

在使用 Centos 之前用的更多是Ubuntu,所以在 useradd 和 adduser 两条命令出现歧义,在Ubuntu系统上这是两条命令,而在Centos上则是同一条命令,adduser 是链接的形式存在 # ll /usr/sbin/ | grep user lrwxrwxrwx. 1 root root 7 10月 30 17:09 adduser -> useradd -rwxr-x---. 1 root root 114064 6月 10 09:16 useradd 1.添加用户

在MySQL中修改密码及访问限制的设置方法详解

由于其源码的开放性及稳定性,且与网站流行编 挥镅 PHP的完美结合,现在很多站点都利用其当作后端数据库,使其获得了广泛应用.处于安全方面的考虑,需要为每一用户赋于对不同数据库的访问限制,以满足不同用户的要求.下面就分别讨论,供大家参考.    一.MySQL修改密码方法总结  首先要说明一点的是:一般情况下,修改MySQL密码是需要有mysql里的root权限的,这样一般用户是无法更改密码的,除非请求管理员帮助修改.    方法一    使用phpMyAdmin  (图形化管理MySql数据库的

mysql免安装版配置与修改密码的教程

第一步:配置环境变量(我的解压路径:G:\mysql\mysql-5.7.21-winx64 ) MYSQL_HOME=你解压的路径 PATH = ;%MYSQL_HOME %\bin; PATH变量是在原来的基础上多添加的,不要把其它的设置给删掉了 第二步在解压的目录下添加my.ini 文件(如果已经有了这个文件,把里面的内容替换掉就好) 文件内容是 [client] port=3306 default-character-set=utf8 [mysqld] port=3306 charact

mysql设置更改root密码、mysql服务器的连接、mysql常用命令的图解

1.设置更改root密码 查看mysql 启动与否,若没启动就运行:/usr/local/mysql56/bin/mysql ps aux |grep mysql 或 netstat -tulnp |grep 3306 运行mysql 命令,会出现: -bash: mysql: command not found 就把mysql 添加到环境变量: 临时添加:PAHT=$PATH:/usr/local/mysql56/bin 永久添加:echo "export PATH=$PATH:/usr/lo