1.通过mysql数据库的user表查看用户相关信息

1mysql> use mysql 2Reading table information for completion of table and column names 3You can turn off this feature to get a quicker startup with -A 4Database changed 5mysql> select host,user,password from user; 6+-----------+------+-------------------------------------------+ 7| host | user | password | 8+-----------+------+-------------------------------------------+ 9| localhost | root | *87F2746835A04895BB77E12AA5054A767******* | 10| qxyw | root | | 11| 127.0.0.1 | root | | 12| localhost | | | 13| qxyw | | | 14+-----------+------+-------------------------------------------+ 155 rows in set (0.00 sec)

2.创建数据库
1mysql> create database [databasename] default character set utf8 collate utf8_general_ci; 2Query OK, 1 row affected (0.00 sec)
3.创建用户
1mysql> create user 'dba'@'%' identified by '*******'; 2Query OK, 0 rows affected (0.00 sec)
user表中host列的值的意义
% 匹配所有主机
localhost localhost不会被解析成IP地址,直接通过UNIXsocket连接
127.0.0.1 会通过TCP/IP协议连接,并且只能在本机访问;
::1 ::1就是兼容支持ipv6的,表示同ipv4的127.0.0.1
4.对dba用户给予针对指定数据库进行增删改查的权限
1mysql> grant select,insert,update,delete,create on [databasename].* to dba; 2Query OK, 0 rows affected (0.00 sec)
注意:修改完权限以后 一定要刷新服务,或者重启服务,刷新服务用:FLUSH PRIVILEGES
5.可以通过show grants命令查看权限,若想要在原来的基础上增加权限则继续执行grant

1mysql> grant drop on [databasename].* to dba; 2Query OK, 0 rows affected (0.00 sec) 3mysql> show grants for dba; 4+----------------------------------------------------------------------------------------------------+ 5| Grants for dba@% | 6+----------------------------------------------------------------------------------------------------+ 7| GRANT USAGE ON *.* TO 'dba'@'%' IDENTIFIED BY PASSWORD '*****************************************' | 8| GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP ON `[databasename]`.* TO 'dba'@'%' | 9+----------------------------------------------------------------------------------------------------+ 102 rows in set (0.00 sec)

6.通过revoke命令可以移除用户的相关权限

1mysql> revoke drop on [databasename].* from dba; 2Query OK, 0 rows affected (0.00 sec) 3mysql> show grants for dba; 4+----------------------------------------------------------------------------------------------------+ 5| Grants for dba@% | 6+----------------------------------------------------------------------------------------------------+ 7| GRANT USAGE ON *.* TO 'dba'@'%' IDENTIFIED BY PASSWORD '*****************************************' | 8| GRANT SELECT, INSERT, UPDATE, DELETE, CREATE ON `[databasename]`.* TO 'dba'@'%' | 9+----------------------------------------------------------------------------------------------------+ 102 rows in set (0.00 sec)
