Mysql 用户创建,权限修改

mysql版本使用的是5.7,5.7版本的用户密码和以前的版本略有不同。5.7版本的用户表是Mysql库中user表,5.7版本user表中已经没有password字段,密码是将加密后的用户密码存储于authentication_string字段。

一、创建用户:

命令:CREATE USER'username'@'localhost' IDENTIFIED BY 'password';

注:“username”是用户名;“localhost”本机登陆,如需要远程登陆需要修改为“%”,“password”为密码;

例子:CREATE USER 'root'@'localhost' IDENTIFIED BY '123'; //本机登陆用户

            CREATE USER 'root'@'%' IDENTIFIED BY '123';//远程登录用户

二、授权:

命令:GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;

注:“privileges” 给这个用户操作的权限,包括增删改查等权限,如果为ALL就是所有的操作权限;“databasename.tablename”允许这个用户操作那个库那个表,如果需要所有表,值为*.*;“hos”ip地址,如果为“%”则所有的主机都可以访问,也可以规定访问的主机ip;“WITH GRANT OPTION”授权,具体为当前操作用户给 username 用户授权。

例子:GRANT ALL PRIVILEGES ON *.* TO 'test'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION; flush privileges;

//修改权限为所有主机都可以使用test用户登陆mysql 并且可以对当前mysql的所有表进行所有的操作。这个语句可以创建用户。flush privileges 语句是刷新。

三、修改用户密码:

命令:SET PASSWORD FOR'username'@'host'= PASSWORD('newpassword');

            UPDATE USER SET  authentication_string = PASSWORD('newpassword') WHERE user="username";

注:两条语句都可以

四、删除用户:

  命令:DROP USER 'username'@'host';

五、查看权限:

命令:show grants for username@host;



还有就是远程链接mysql需要关闭防火墙,授权需要在语句结束后执行flush privileges;如果不执行会报错。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容