MySQL数据库学习笔记 ---- 数据库授权

简介:

测试在部署项目到Linux时,如果需要Win7上类似 Navcat for MySQL 这样的工具连接MySQL时;

或者,应用服务器 需要连接数据库服务器时,需要对数据库服务器使用 grant 授权命令,让其访问。

 

思路:

(1)在数据库服务器上创建数据库的用户,允许应用服务器访问,即授权

(2)直接对 root 管理员授权,但这样不安全

 

按照思路(1)的方式:

首先,查看下数据库的用户:

 1 mysql> select user,host from mysql.user;
 2 
 3 +------+---------------+
 4 | user | host          |
 5 +------+---------------+
 6 | root | 127.0.0.1     |
 7 | root | 192.167.31.%  |
 8 | root | 192.168.31.99 |
 9 | root | ::1           |
10 |      | localhost     |
11 | root | localhost     |
12 |      | moban         |
13 | root | moban         |
14 +------+---------------+
15 8 rows in set (0.00 sec)
View Code

授权:

1 mysql> grant select,insert,update,delete on guest.* to guest@'192.168.31.%' identified by '123456';

grant:  授权命令

select、insert、update、delete:  赋予什么权限 (all 代表所有权限)

on guest.*:  在 guest 库上的所有表

to guest:  给guest用户

@'192.168.31.%':  在192的网段

identified by '123456':  

 

刷新权限

1 mysql> flush privileges;
 1 mysql> select user,host from mysql.user;
 2 +-------+---------------+
 3 | user  | host          |
 4 +-------+---------------+
 5 | root  | 127.0.0.1     |
 6 | root  | 192.167.31.%  |
 7 | guest | 192.168.31.%  |
 8 | root  | 192.168.31.99 |
 9 | root  | ::1           |
10 |       | localhost     |
11 | root  | localhost     |
12 |       | moban         |
13 | root  | moban         |
14 +-------+---------------+
15 9 rows in set (0.00 sec)

|guest| 192.168.31.% | ---> 这表示所有从192段过来的都可以连(%表示模糊匹配)

上述操作完成,下面测试下(使用Win7的Navicat工具连接):

 

总结:

数据库通过 grant 命令创建用户并授权

1、grant 命令语法如下:

  grant all privileges on dbname.* to username@localhost identified by 'passwd';

 

2、列表说明:

grant all on dbname.* to username@localhost identified by 'passwd'
授权 对应权限 目标:库和表 用户名 、访问数据库的客户端主机 用户密码

说明:以上命令是授权localhost主机上,通过username管理dbname数据库的所有权限,密码为passwd。

其中,username,dbname,passwd 可根据业务的情况修改。

 

posted @ 2017-02-19 10:05  是在下输了。  阅读(117)  评论(0)    收藏  举报