MYSQL之DCL语言

最近在学习sql语句,学习的教材有些落后了XD,现用mysql8.0,有很多语法已经废了或者更新了,特用这篇文章记录一下~以下命令均在Command line client窗口进行

  • 查询用户及密码:password字段改成authentication_string
select user,host,authentication_string,plugin from mysql.user;
  • password()函数已经废了,给密码加密可用md5(),sha()函数
  • 修改密码
use mysql;
update user set authentication_string='' where user="root";
flush privileges;
alter user 'root'@'localhost' identified with mysql_native_password by 'newpassword';
flush privileges;

第二句是必要的,试过不将原密码置空直接alter,会报错,但是将密码设置空值之后要刷新权限,再alter再刷新就OK了。with mysql_native_password这一句也是不可少的,少了也会报错。这里新密码也不用md5(‘newpassword’)去生成密码,直接自己的真实密码就行,查询密码的时候显示的是加密后的密码,这样也不怕泄露了。

你可能感兴趣的:(学习笔记)