MySQL 赋予用户权限命令的简单格式可概括为:
grant 权限 on 数据库对象 to 用户
一、grant 普通数据用户,查询、插入、更新、删除 数据库中所有表数据的权利。
grant select on
testdb.* to common_user@'%' grant insert on testdb.* to common_user@'%' grant update on testdb.* to common_user@'%' grant delete on testdb.* to common_user@'%'
或者,用一条 MySQL 命令来替代:
grant select, insert, update, delete on testdb.* to common_user@'%'
二、grant 数据库开发人员,创建表、索引、视图、存储过程、函数。。。等权限。
grant 创建、修改、删除 MySQL 数据表结构权限。
grant create on testdb.* to developer@'192.168.0.%'; grant alter on testdb.* to developer@'192.168.0.%'; grant drop on testdb.* to developer@'192.168.0.%';
grant 操作 MySQL 外键权限。
grant references on testdb.* to developer@'192.168.0.%';
grant 操作 MySQL 临时表权限。
grant create temporary tables on testdb.* to developer@'192.168.0.%';
grant 操作 MySQL 索引权限。
grant index on testdb.* to developer@'192.168.0.%';
grant 操作 MySQL 视图、查看视图源代码 权限。
grant create view on testdb.* to developer@'192.168.0.%'; grant show view on testdb.* to developer@'192.168.0.%';
grant 操作 MySQL 存储过程、函数 权限。
grant create routine on testdb.* to developer@'192.168.0.%'; -- now, can show procedure status grant alter routine on testdb.* to developer@'192.168.0.%'; -- now, you can drop a procedure grant execute on testdb.* to developer@'192.168.0.%';
三、grant 普通 DBA 管理某个 MySQL 数据库的权限。
grant all privileges on testdb to dba@'localhost'
其中,关键字 “privileges” 可以省略。
四、grant 高级 DBA 管理 MySQL 中所有数据库的权限。
grant all on *.* to dba@'localhost'
五、MySQL grant 权限,分别可以作用在多个层次上。
1. grant 作用在整个 MySQL 服务器上:
grant select on *.* to dba@localhost; -- dba 可以查询 MySQL 中所有数据库中的表。 grant all on *.* to dba@localhost; -- dba 可以管理 MySQL 中的所有数据库
2. grant 作用在单个数据库上:
grant select on testdb.* to dba@localhost; -- dba 可以查询 testdb 中的表。
3. grant 作用在单个数据表上:
grant select, insert, update, delete on testdb.orders to dba@localhost;
4. grant 作用在表中的列上:
grant select(id, se, rank) on testdb.apache_log to dba@localhost;
5. grant 作用在存储过程、函数上:
grant execute on procedure testdb.pr_add to 'dba'@'localhost' grant execute on function testdb.fn_add to 'dba'@'localhost'
六、查看 MySQL 用户权限
查看当前用户(自己)权限:
show grants;
查看其他 MySQL 用户权限:
show grants for dba@localhost;
七、撤销已经赋予给 MySQL 用户权限的权限。
revoke 跟 grant 的语法差不多,只需要把关键字 “to” 换成 “from” 即可:
grant all on *.* to dba@localhost; revoke all on *.* from dba@localhost;
八、MySQL grant、revoke 用户权限注意事项
1. grant, revoke 用户权限后,该用户只有重新连接 MySQL 数据库,权限才能生效。
2. 如果想让授权的用户,也可以将这些权限 grant 给其他用户,需要选项 “grant option“
grant select on testdb.* to dba@localhost with grant option;
这个特性一般用不到。实际中,数据库权限最好由 DBA 来统一管理。
九、应用实例:新建用户并只付给指定数据库操作权限.
//下面为创建lamfire用户,远程登录密码为123456,并分配其对lamfireDB数据库完全操作权限
CREATE USER 'lamfire'@'%' IDENTIFIED BY '123456';
GRANT USAGE ON * . * TO 'lamfire'@'%' IDENTIFIED BY '123456'
;
CREATE DATABASE IF NOT EXISTS `lamfireDB` ;
GRANT ALL PRIVILEGES ON `lamfireDB` . * TO
lamfire@'%'
;
FLUSH PRIVILEGES;
十、查看系统用户表.
use mysql; select * from user;
相关推荐
MySQL提供了用户管理和权限控制功能。手册会解释GRANT和REVOKE语句,以及如何管理用户账户和权限。 九、备份与恢复 MySQL提供了mysqldump工具进行数据库备份,以及mysql命令行工具进行恢复。手册会指导如何进行这些...
MySQL语法大全(新)这篇文章涉及了MySQL的基础知识和常用操作,适合于数据库开发人员和系统管理员作为日常工作的参考文档。文章中涉及的内容包括了从命令行连接MySQL数据库,到用户管理、数据库操作以及表的操作等...
MySQL 语法语句大全 MySQL 语法语句大全是一本很好的教材,为 MySQL 初级学者提供了详细的指南。本教材涵盖了 MySQL 的...在本教材中,我们还将介绍 MySQL 的其他方面的知识,如视图、存储过程、触发器、权限管理等。
MySQL是一种广泛使用的开源关系型数据库管理系统(RDBMS),它基于结构化...总之,MySQL语法大全涵盖了从基础操作到高级特性的全方位知识,通过深入学习和实践,你可以熟练地管理和维护MySQL数据库,满足各种业务需求。
本篇"mysql语法大全精讲(中文版)"涵盖了MySQL中涉及的主要SQL语句,包括数据定义、数据操作、实用工具、事务处理和锁定、数据库管理、复制以及预处理语句的语法。 13.1 数据定义语句主要用于创建和修改数据库结构...
本资料主要涵盖了MySQL的基础语法,包括数据的增删改查、查询条件的使用、事务处理、字符集问题的解决、数据库的导入与导出以及用户权限管理和字符串拼接等核心概念。 1. **增删改查(CRUD)**: - **创建(Create...
MySQL还提供了用户管理、权限设置等功能,以确保数据库的安全性。例如,可以使用GRANT和REVOKE语句来分配或撤销用户的数据库访问权限。 7. **性能优化**: MySQL支持索引创建、查询优化器设置、内存配置等,以...
MySQL是世界上最流行的关系型数据库管理系统之一,其基本语法是每个数据库管理员和开发人员必须掌握的基础。以下是一些关于MySQL的基本语法及其应用的详细说明: 1. **显示和管理数据库**: - `SHOW DATABASES;` ...
以下是一些关键的MySQL语法和操作的详细说明: 1. **启动MySQL服务器**: 通过`winmysqladmin`或直接在DOS命令行中运行`d:mysqlbinmysqld`来启动MySQL服务。 2. **进入MySQL交互界面**: 打开DOS命令行,然后...
MySQL是世界上最受欢迎的关系型数据库管理系统之一,尤其在Web应用程序中被广泛应用。本参考大全将深入探讨MySQL的SQL语法,帮助用户更好地理解和运用这个强大的数据库系统。 一、SQL基础 SQL,全称Structured ...
在MySQL语法大全中,你可以找到一系列关于如何有效地操作数据库的关键知识点。以下是对这些知识点的详细阐述: 1. 数据库创建与删除: - `CREATE DATABASE` 用于创建新的数据库,如 `CREATE DATABASE mydatabase;`...
- **撤销权限**: `REVOKE` 用来撤销之前授予用户的权限。 ### 数据控制语句 - **提交事务**: `COMMIT` 用来提交当前的事务更改。 - **回滚事务**: `ROLLBACK` 用来回滚当前事务的所有更改。 - **设置事务**: `SET...
mysql语法文档是mysql数据库管理系统的使用手册,涵盖了mysql的基本语法、C API编程接口等内容。本文档适合初学者学习mysql语法,也可以作为已经掌握mysql的开发者的一份参考手册。 mysql语法部分: 1. select语句...
在MySQL数据库管理中,正确地配置用户权限是非常重要的步骤之一,它不仅关乎数据的安全性,还能确保不同角色的用户能够高效、安全地访问所需的数据资源。本文将详细介绍如何设置MySQL用户的权限,并通过具体的示例来...
此外,MySQL还提供了其他几个重要的全局管理权限,例如FILE权限允许用户在服务器上读写文件,PROCESS权限允许用户查看或终止其他用户的进程,RELOAD权限允许用户重载访问控制表和刷新日志,而SHUTDOWN权限则允许用户...
MySQL的权限系统允许管理员对用户进行细粒度控制,如GRANT和REVOKE语句用于赋予或撤销用户的操作权限。 七、备份与恢复 1. 数据库备份:`mysqldump`命令用于生成SQL脚本或二进制文件备份。 2. 数据恢复:使用`mysql...
这些是MySQL5.1中的基本操作,它们构成了数据库管理员日常工作的基础。掌握这些命令和语法,能够有效地管理数据库,执行查询,创建和维护用户权限,以及进行数据的备份和恢复。在实际应用中,还会涉及索引、视图、...
MySQL是一种广泛使用的开源关系型数据库管理系统,其高级语法是数据库管理员和开发人员必备的技能之一。本教程将深入探讨MySQL的高级特性,帮助你提升在数据处理和查询优化方面的专业能力。 1. **子查询与联接操作*...
以上就是关于MySQL的一些基本操作及常用语法的详细介绍,这些知识点覆盖了登录与退出MySQL、修改密码、用户权限管理、数据库和表的基本操作等方面,希望能够帮助读者更好地理解和掌握MySQL的基础用法。