`

mysql 权限管理_转转转

阅读更多

Mysql用户与权限管理

========对于ROOT用户的密码操作(更改用户密码) ========
刚刚安装完的Mysql,只一有个root用户,密码为空,而且只能在本机登录!
 
为root加上密码xxx123:
./bin/mysqladmin -u root password xxx123
或写成
./bin/mysqladmin -uroot password xxx123
 
加下密码之后,在本进行进入mysql:
./bin/mysql -uroot -p

更改root的密码由xxx123改为yy1234:
./bin/mysqladmin -uroot -pxxx123 password yy1234
 
 
=======grant 权限 on 数据库对象 to 用户 ==========
MySQL 赋予用户权限命令的简单格式可概括为:
grant 权限 on 数据库对象 to 用户
grant 权限 on 数据库对象 to 用户 identified by "密码"
 
========用户及权限管理:最常用操作实例========
(用户名:dba1,密码:dbapasswd,登录IP:192.168.0.10)
 
//开放管理MySQL中所有数据库的权限
grant all on *.* to dba1@'192.168.0.10'identified by "dbapasswd";
 
//开放管理MySQL中具体数据库(testdb)的权限
grant all privileges on testdb to dba1@'192.168.0.10'identified by "dbapasswd";

grant all on testdb to dba1@'192.168.0.10'identified by "dbapasswd";

//开放管理MySQL中具体数据库的表(testdb.table1)的权限
grant all on testdb.teable1 to dba1@'192.168.0.10'identified by "dbapasswd";
 
//开放管理MySQL中具体数据库的表(testdb.table1)的部分列的权限
grant select(id, se, rank) on testdb.table1 to ba1@'192.168.0.10'identified by "dbapasswd";
 
//开放管理操作指令
grant select, insert, update, delete on testdb.* to dba1@'192.168.0.10'identified by "dbapasswd";
 
//回收权限
revoke all on *.* from dba1@localhost;
 
//查看 MySQL 用户权限
show grants;
show grants for dba1@localhost;
 
========用户及权限管理:更多更详细实例========
下面用实例来进行说明:
 
一、grant普通数据用户(test1),查询、插入、更新、删除 数据库(test)中所有表数据的权利。
grant select on test.* to test1@'%';
grant insert on test.* to test1@'%';
grant update on test.* to test1@'%';
grant delete on test.* to test1@'%';
或者,用一条 MySQL 命令来替代:
grant select, insert, update, delete on test.* to test1@'%';

二、grant数据库开发人员(duser),创建表、索引、视图、存储过程、函数。。。等权限。
 
grant创建、修改、删除 MySQL 数据表结构权限。
grant create on testdb.* to duser@'192.168.0.%';
grant alter on testdb.* to duser@'192.168.0.%';
grant drop   on testdb.* to duser@'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 duser@'192.168.0.%';
grant show   view on testdb.* to duser@'192.168.0.%';
 
grant 操作 MySQL 存储过程、函数 权限。
grant create routine on testdb.* to duser@'192.168.0.%';
grant alter routine on testdb.* to duser@'192.168.0.%';
grant execute        on testdb.* to duser@'192.168.0.%';
 
三、grant 普通DBA管理某个MySQL数据库(test)的权限。
grant all privileges on test 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 来统一管理。
分享到:
评论

相关推荐

    mysql_markdown_mac.zip

    3. **MySQL客户端**: 需要有安装好的MySQL客户端或者连接到MySQL服务器的权限,以便读取数据库信息。 4. **文本编辑器**: 为了方便查看和编辑Markdown文件,推荐安装一个Markdown友好型的编辑器,如`Typora.dmg` ...

    mysql.rar_MYSQL_mysql c++_mysql sdk

    MySQL是一款广泛使用的开源关系型数据库管理系统,其C++ SDK(软件开发工具包)为开发者提供了在C++应用程序中与MySQL数据库交互的能力。本压缩包"mysql.rar"包含了关于MYSQL、mysql_c++以及mysql_sdk的相关资源,...

    mysql_hive_jar.zip

    MySQL是一种关系型数据库管理系统,广泛应用于数据存储和查询,而Hive则是基于Hadoop的数据仓库工具,用于大数据集的批处理、查询和分析。`mysql_hive_jar.zip`这个压缩包文件显然是为了帮助用户将MySQL与Hive集成,...

    mysql-connector-odbc-3.51.12-win32.zip_MySQL ODBC 3.51_mysql con

    MySQL ODBC 3.51是MySQL数据库管理系统与Microsoft Access之间的一个重要桥梁,它允许用户通过ODBC(Open Database Connectivity)接口将数据从ACCESS迁移到MySQL。MySQL Connector/ODBC是MySQL公司提供的一个驱动...

    MySql_C 接口集合

    ### MySQL C 接口集合详解 #### 1....这些函数构成了MySQL C API的核心,提供了从连接管理、查询执行到结果处理的全方位支持。掌握它们的使用方法,对于开发高效、稳定的数据库应用程序至关重要。

    Mysql.rar_MYSQL_mysql登录

    MySQL是一款广泛使用的开源关系型数据库管理系统,以其高效、稳定和易于管理的特点,深受开发者和企业的青睐。本资料主要关注的是如何实现MySQL的网络应用以及如何进行远程登录。 首先,了解MySQL的基本概念是至关...

    MySQL-Front_V5.1+注册码

    在安全性方面,MySQL-Front允许用户管理和控制数据库的访问权限,确保数据的安全性。通过软件,你可以设置不同级别的用户账户,分配不同的操作权限,从而实现精细的访问控制。 在安装过程中,`MySQL-Front_Setup....

    MySQL_5.1_zh_MYSQL_源码.zip

    10. **安全性与权限管理**:MySQL的权限系统允许精细的用户访问控制,源码提供了如何实现这一功能的实例。 总的来说,MySQL 5.1的源代码提供了一个全面的数据库系统实现的学习平台,涵盖了从SQL解析到数据存储、从...

    mysql_markdown_linux.zip

    通过这个工具,你可以轻松地将数据库设计整理成清晰的文本格式,这对于团队沟通、版本管理和代码审查都大有裨益。同时,Markdown的通用性使得这些文档能在各种环境中无缝使用。记得保持数据库和Markdown文档的同步,...

    MySQL的账户与权限管理

    MySQL的账户与权限管理系统是数据库管理...总的来说,MySQL的账户与权限管理是数据库管理的重要组成部分,通过精细控制用户权限,可以有效地保护数据库免受未经授权的访问和操作,从而确保数据的安全性和系统的稳定性。

    Mysql转oracle工具

    MySQL的权限管理相对简单,而Oracle有更复杂的用户、角色和权限体系。在转换时,需要考虑用户权限和角色的迁移。 4. **表空间和分区**: Oracle支持表空间和分区,这是MySQL不具有的特性。在转换过程中,可能需要...

    MySql培训日志_stu

    - MySQL是一款开放源代码的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言——SQL进行数据库管理。 - **1.1.4 MySQL的安装** - 安装MySQL通常包括下载MySQL Server、配置环境变量、初始化MySQL实例等...

    MYSQL

    6.7 存取控制,阶段1:连接证实 6.8 存取控制,阶段2:请求证实 6.9 权限更改何时生效 6.10 建立初始的 MySQL权限 6.11 向MySQL增加新用户权限 6.12 怎样设置口令 6.13 存取拒绝(Access ...

    db转mysql数据库转换

    4. **权限和用户管理**:MySQL有其自身的权限系统,如果原DB数据库中有特定的用户和权限设置,可能需要在MySQL中重新配置。 5. **事务处理**:在大量数据迁移时,为了保证数据一致性,可能需要使用事务来确保所有...

    MySQL中文参考手册

    o 6.10 建立初始的 MySQL权限 o 6.11 向MySQL增加新用户权限 o 6.12 怎样设置口令 o 6.13 存取拒绝(Access Denied)错误的原因 o 6.14 怎样使MySQL安全以对抗解密高手(cracker) * 7 MySQL 语言参考 o 7.1 文字...

    mysql_oracle_dm整库数据迁移相关资料.rar

    MySQL是一款开源的关系型数据库管理系统,以其简洁高效和低成本受到广泛欢迎;Oracle则是一款企业级的商业数据库,具有强大的数据处理能力和高度的可用性;达梦数据库作为国产数据库,强调数据安全和高性能,适用于...

    import-data-from-excel-to-mysql.rar_excel_excel mysql_java excel

    此外,限制对数据库的权限,避免不必要的风险。 综上所述,这个压缩包文件可能包含了一个示例代码或教程,演示了如何使用Java和Apache POI库读取Excel文件,通过JDBC接口将数据导入到MySQL数据库的过程。这个过程...

    pbootcms数据sqlite转mysql数据库

    标题 "pbootcms数据sqlite转mysql数据库" 涉及的是一个常见的数据库迁移过程,从SQLite数据库系统转换到MySQL数据库系统。这个过程在网站或应用的开发和维护中经常遇到,尤其是在更换数据库服务或者需要更强大的...

    mysql数据库_MYSQL_

    此外,还有CREATE用于创建数据库对象如表、视图等,ALTER用于修改已有的数据库对象,DROP用于删除对象,以及GRANT和REVOKE用于权限管理。 字段属性是定义表结构的关键部分,包括数据类型(如INT、VARCHAR、DATE等)...

    MySQL中文参考手册.chm

    6.6 权限系统工作原理 6.7 存取控制,阶段1:连接证实 6.8 存取控制,阶段2:请求证实 6.9 权限更改何时生效 6.10 建立初始的 MySQL权限 6.11 向MySQL增加新用户权限 6.12 怎样设置...

Global site tag (gtag.js) - Google Analytics