你好,游客 登录 注册 搜索
背景:
阅读新闻

MySQL创建数据库与创建用户以及授权

[日期:2017-06-21] 来源:Linux社区  作者:chenjianxiang [字体: ]

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

mysql> use mysql
Reading table information
for completion of table and column names
You can turn off
this feature to get a quicker startup with -A
Database changed
mysql
> select host,user,password from user ;
+-----------+------+-------------------------------------------+
| host      | user | password                                  |
+-----------+------+-------------------------------------------+
| localhost | root | *87F2746835A04895BB77E12AA5054A767******* |
| qxyw      | root |                                          |
| 127.0.0.1 | root |                                          |
| localhost |      |                                          |
| qxyw      |      |                                          |
+-----------+------+-------------------------------------------+
5 rows in set (0.00 sec)

2.创建数据库

mysql> create database [databasename] default character set utf8 collate utf8_general_ci;
Query OK, 1 row affected (0.00 sec)

3.创建用户

mysql> create user 'dba'@'%' identified by '*******';
Query 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用户给予针对指定数据库进行增删改查的权限

mysql> grant select,insert,update,delete,create on [databasename].* to dba;
Query OK, 0 rows affected (0.00 sec)


注意:修改完权限以后 一定要刷新服务,或者重启服务,刷新服务用:FLUSH PRIVILEGES

5.可以通过show grants命令查看权限,若想要在原来的基础上增加权限则继续执行grant

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

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

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

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-06/145067.htm

linux
相关资讯       MySQL创建数据库  MySQL创建用户 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款