当前位置: > Ubuntu >

ubuntu14.10下解决"ERROR 1820 (HY000): You must SET PASSWORD before executing this statement"

时间:2016-05-20 21:41来源:linux.it.net.cn 作者:IT
1. 问题描述
在ubuntu14.10终端下, 执行命令

[plain] view plain copy
 
  1. $ mysql -uroot -p  
并输入密码后进入mysql的shell, 然后在显示所有数据库时出现以下信息

[plain] view plain copy
 
  1. ERROR 1820 (HY000): You must SET PASSWORD before executing this statement  
具体操作如下

[plain] view plain copy
 
  1. xx@ubuntu:~$ mysql -uroot -p  
  2. Enter password:   
  3. Welcome to the MySQL monitor.  Commands end with ; or \g.  
  4. Your MySQL connection id is 5  
  5. Server version: 5.7.5-m15  
  6.   
  7. Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.  
  8.   
  9. Oracle is a registered trademark of Oracle Corporation and/or its  
  10. affiliates. Other names may be trademarks of their respective  
  11. owners.  
  12.   
  13. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.  
  14.   
  15. mysql> show databases;  
  16. ERROR 1820 (HY000): You must SET PASSWORD before executing this statement  
  17. mysql>  
 
2. 解决方法
以上信息提示比较明显, 即在执行语句前必需设置密码,此处为了学习, 故将密码设置为123456, 且本人的root密码正是123456(密码请各位自行设置) ,操作如下:


 
  1. mysql> SET PASSWORD = PASSWORD('123456');  
执行完上面设置密码的命令后, 问题即可解决。
以下为本人的操作:


 
  1. xx@ubuntu:~$ mysql -uroot -p  
  2. Enter password:   
  3. Welcome to the MySQL monitor.  Commands end with ; or \g.  
  4. Your MySQL connection id is 5  
  5. Server version: 5.7.5-m15  
  6.   
  7. Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.  
  8.   
  9. Oracle is a registered trademark of Oracle Corporation and/or its  
  10. affiliates. Other names may be trademarks of their respective  
  11. owners.  
  12.   
  13. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.  
  14.   
  15. mysql> show databases;  
  16. ERROR 1820 (HY000): You must SET PASSWORD before executing this statement  
  17. mysql> use mysql;  
  18. ERROR 1820 (HY000): You must SET PASSWORD before executing this statement  
  19. mysql> SET PASSWORD = PASSWORD('123456');  
  20. Query OK, 0 rows affected (0.06 sec)  
  21.   
  22. mysql> show databases;  
  23. +--------------------+  
  24. | Database           |  
  25. +--------------------+  
  26. | information_schema |  
  27. | mysql              |  
  28. | performance_schema |  
  29. +--------------------+  
  30. 3 rows in set (0.00 sec)  
  31.   
  32. mysql>   
 详情可以查询数据库mysql下的user表


 
  1. mysql> select * from mysql.user;  
 或:


 
  1. mysql> select host, user, password from mysql.user;  
 
 
 
(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容