65rew111 发表于 2016-12-29 14:51:00

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固定IP192.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 forusername@hostname=password(‘XXXX’);   也可以直接用sql语句操作。
mysql> update user set password=’XXXX’ where user=’username’and host=’ hostname’;
二.分配权限
分配权限grant,收回权限revoke
[*]分配mysql所有权限给用户

grant all on*.* tousername @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。


页: [1]
查看完整版本: Mysql用户管理和权限分配