mysql 5.7 修改密码和配置权限

一 、修改密码

  1. 命令:mysql -uroot -p

会提示你输入密码,就是上面我们看到的默认密码,输入后正常情况下会有welcome等提示

到这里我们就可以开始去修改我们的默认密码了,接着输入:

  1. 命令:use mysql

然后会提示你:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

不要急,我们接着输入命令:

  1. 命令:alter user ‘root’@’localhost’ identified by ‘mysql’;

然后会提示你Query OK !.

下面就正式进行修改我们的密码,这里有一个地方需要注意,5.7.9版本user表里面已经没有password这个字段了,可以看一下

但是这里有一个加密的 authentication_string 字段,这就是新版本的密码了,既然找到了我们就不客气了,改密码:

  1. update user set authentication_string=“123456” where user=“root”;

注意:这里很多人都会以为设置好了,就直接敲命令:flush privileges;然后退出重启登录了,结果会发现设置的密码不管用,楼主也是在这边吃了暗亏,停了有段时间不得其解,百度过后发现需要再设置以下:

  1. SET PASSWORD = PASSWORD(‘yourPwd’);

PASSWORD 后面写你刚刚设置过的新密码;

这次我们可以flush了:

  1. flush privileges
  1. exit  ;
这样我们就成功设置我们的新密码了;

好了,我们来验证一下,我是继续在开出的cmd命令窗口输入:

  1. mysql -uroot -p

然后输入密码  (你的新密码),正常情况下就OK了。

二、用户与权限

  1. 创建用户使用命令: CREATE USER ‘username’@’host’ IDENTIFIED BY ‘password’;    //username-用户名 host-可访问主机 %|localhost password-密码
  2. 授权命令: GRANT privileges ON databasename.tablename TO ‘username’@’host’ ;  //privileges–权限选项【insert,select,update,delete,drop,ALL】databasename.tablename-数据库名称和表名称 ‘如 *.*为所有权限’
  3. 收回权限 :REVOKE privilege ON databasename.tablename FROM ‘username’@’host’;
  4. 删除用户:DROP USER ‘username’@’host’;

发表评论