Mysql用户管理和权限分配
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql用户管理和权限分配相关的知识,希望对你有一定的参考价值。
一.创建用户
1.登录进入
root用户的密码初始是空,初始安装完mysql,配置环境变量后。
在命令窗口输入:
mysql –u root –p
在提示输入密码时直接回车进入。
mysql>
用户表
Mysql的用户在mysql数据库的user表里。
1)选择数据库:
mysql>use mysql;
2)选择数据库后就可以执行sql查询,更新等。
mysql>selecthost,user,password from user;
host 是用户可以登录的主机地址,只有host的主机可以用该user登录mysql,password显示的是加密后的密码。
Host的含义:
192.168.1.23 固定IP
192.168.1.% 表示192.168.1网段内的
% 匹配所有主机
localhost 本机,localhost不会被解析成IP地址,直接通过UNIXsocket连接
127.0.0.1 本机IP,会通过TCP/IP协议连接,并且只能在本机访问;
::1 就是兼容支持ipv6的,表示同ipv4的127.0.0.1
3)创建用户
mysql> create user username IDENTIFIED by ‘password‘;
username是要创建的用户名,password的是密码,这里输入明码,在数据库里会加密。
4)修改用户名
mysql> rename user username to new_username;
username为原来的用户名,new_username为新用户名。
5)删除用户
mysql> drop user new_username;
6)修改用户密码
mysql>set password [email protected]=password(‘XXXX’);
也可以直接用sql语句操作。
mysql> update user set password=’XXXX’ where user=’username’and host=’ hostname’;
二.分配权限
分配权限grant,收回权限revoke
分配mysql所有权限给用户
grant all on*.* to username @localhost;
说明:@后面是hostname’
给用户分配数据库权限
grant 普通数据用户,查询、插入、更新、删除 数据库中所有表数据的权利。
grant select on mydb.* to username @localhost;
grant insert on mydb.* to username @localhost;
grant update on mydb.* to username @localhost;
grant delete on mydb.* to username @localhost;
或者,用一条 MySQL 命令:
grant select, insert, update, delete on mydb.* to username @localhost;
说明:mydb 是数据库名称,mydb.*表示mydb数据库里所有对象。单个表或视图是mydb.log。log为日志表。
其他命令:
grant create on ,
grant alter on ,
grant drop on ,
grant references(外键) on ,
grant create temporary(临时表) tables on,
grant index on,
grant create view on,
grant show view on,
grant create routine(存储过程、函数) on,
grant execute on
注意:修改完权限以后 一定要刷新服务,或者重启服务,刷新服务用:FLUSH PRIVILEGES。
本文出自 “测试” 博客,请务必保留此出处http://wanglidong.blog.51cto.com/8781265/1886964
以上是关于Mysql用户管理和权限分配的主要内容,如果未能解决你的问题,请参考以下文章