mysql数据库及有关权限的表浅谈

149 篇文章 2 订阅
MySQL是一个多用户、多线程SQL数据库,常与PHP结合用于数据驱动的网站开发。它提供快速、灵活的数据库服务,具有处理大量记录的能力和精细的权限管理系统,包括全局、库级、表级等权限控制。用户权限的变更不会立即影响已连接的会话,而是在下次登录时生效。
摘要由CSDN通过智能技术生成

转自:微点阅读 https://www.weidianyuedu.com

什么是MySQL?

MySQL是一个多用户、多线程的SQL数据库,是一个客户机/服务器结构的应用,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。

SQL (Structured Query Language结构化查询语言)是目前使用最广的并且是标准的数据库语言。SQL语言使得存取或更新信息变得十分容易,你可以直接使用SQL从网站上查询信息。MySQL的快速和灵活性足以满足一个网站的信息管理工作。数据库与用户端之间的接口程序可以使用CGI进行通信。新网ChinaDNS使用的是 PHP,使用PHP和MySQL这两样东西加在一起,对于开发数据驱动的网站这项工作而言是最佳组合。PHP是一种用于服务器端执行程序解释的脚本语言。如果你接触过ASP的话,那么您对于在HTML页面中嵌入代码应该是比较熟悉了。PHP代码在服务器一端被解释、执行并转变成普通的HTML页面内容,送给浏览器一端。这种模式使得我们可以用它来完成相当复杂的功能。

为什么用MySQL?

现在每一个人的生活几乎都离不开数据库,如果没有数据库,很多事情都会变得非常棘手,也许根本无法做得到。银行、大学和图书馆就是几个严重依赖数据库系统的地方。在互联网上,使用搜索引擎、在线购物甚至是访问网站地址(http://www...)都离不开数据库。一个数据库通常都安装在称为数据库服务器的计算机上。目前市场上运行最快的 SQL (Structured Query Language结构化查询语言) 数据库之一就是MySQL Server,由瑞典的T.c.X. DataKonsultAB公司开发。MySQL可以从http://www.mysql.com/上下载,它提供了其它数据库少有的编程工具,而且 MySQL对于商业和个人用户是免费的。如果想用MySQL开发应用软件,必须支付一定的产品使用许可费用,具体情况可以访问MySQL"s licensing section。

MySQL的功能特点如下:

1. 可以同时处理几乎不限数量的用户;

2. 处理多达50,000,000以上的记录;

3. 命令执行速度快,也许是现今最快的;

4. 简单有效的用户特权系统。

mysql有关权限的表

 一、关于MySQL权限的几点常识

  1、MySQL的权限系统主要用来验证用户的操作权限。

  2、在MySQL内部,权限信息存放在MySQL数据库的granttable里。当mysql启动后,granttable里的信息会写入内存

  3、MySQL 使用user name 加 host name 来作为标识符

  通过这种标识符,可以用来区分不同host上的相同的user name。

  4、MySQL 权限控制有2种策略:

  1)根据密码是否正确来控制客户端的连接。

  2)假设可以正常connect,server还可以检查每个satement是否有权限去执行。如果只有某张表的select 权限,就不能进行drop 操作。

  5、如果用户的权限改变,当前已连接的会话用户不会受影响,下次登录才会生效。

  二、关于MySQL的几个有关权限表的含义:

  user:用户账号、全局权限

  db:库级别权限

  host:废弃

  tables_priv:表级别权限

  colums_priv:列级别权限

  procs_priv:存储过程和存储函数相关的权限

  proxies_priv:代理用户权限

  三、MySQL用户账号的创建规则

  用户名@主机

  用户名:16字符以内

  主机:

  主机名:www.test.com,mysql

  IP:192.168.2.1

  网络地址:192.168.0.0/255.255.0.0

  通配符:%,192.168.%.%,%.test.com

  四、MySQL的用户权限级别

  服务管理类:super

  库:CREATE

  表:DELETE、ALTER

  列:INSERT、SELECT、UPDATE

  更多级别可参考MySQL官方文档

  五、与权限相关的几个命令

  GRANT 权限,... ON [对象类型] db.{table|routine} TO 'username'@'host' [INDENTIFIED BY 'password'];

  REVOKE 权限,... ON [对象类型] db.{table|routine} FROM 'username'@'host';

  SHOW GRANTS FOR 'username'@'host';

  CREATE USER 'username'@'host' [IDENTIFIED BY 'password'];

  DROP USER 'username'@'host';

  RENAME USER old_name TO new_name;

  六、权限的操作命令举例

  查看当前数据库的所有用户:

  select user,host,password from mysql.user;

  给用户赋予super权限(super和ALL PRIVILEGES都可以):

  GRANT super ON *.* TO 'mysql'@'localhost';

  GRANT ALL PRIVILEGES ON *.* TO 'mysql'@'localhost';

  删除用户的super权限(super和ALL PRIVILEGES都可以):

  REVOKE super ON *.* FROM 'mysql'@'localhost';

  REVOKE ALL PRIVILEGES ON *.* FROM 'mysql'@'localhost';

  查看赋予用户的权限

  SHOW GRANTS FOR 'mysql'@'localhost';

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值