热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

Oracle数据库权限管理常用的SQL语句

Oracle数据库权限管理常用的SQL语句1、Oracle9g中的三个默认用户www.2cto.com用户名密码syschange_on_install[assysdba]systemmanager...SyntaxHighlighter.all();

Oracle数据库权限管理常用的SQL语句
 
1、Oracle9g中的三个默认用户
   www.2cto.com  
   用户名                 密码
   sys                  change_on_install     [as sysdba]
   system               manager
   scott                 tiger
 
2、用户登录
1)开启监听
 
   C:\Users\Administrator>lsnrctl start
 
2)开启数据库的实例
 
   C:\Users\Administrator>oradim -starup -sid orcl
 
3)超级管理员登录
 
   C:\Users\Administrator>sqlplus / as sysdba
 
4)创建普通用户并登录
 
   create user lisi identified by lisi;   //创建一个用户名为lisi,密码为lisi的用户
 
   default tablespace users                   //默认表空间为users,用来存放数据
 
   temporary tablespace temp              //临时表空间temp,等于windows临时文件夹
 
   quota 50M on users                           //限定用户只能使用users表空间为50M
 
   C:\Users\Administrator>sqlplus lisi/lisi        //lisi用户登录
 
5)限制用户
 
   用户加锁:alter User用户名Account Lock
 
   用户解锁:alter User用户名Account Unlock
 
   用户口令既刻失效:alter User 用户名Password Expire
 
6)删除用户
 
   Drop user 用户名          用户下面没有对象
 
   Drop User 用户名 cascade  其中CasCade表示删除用户所有对象
 
7)断开正在连接的用户
 
   SQL>disconn
 
3、系统权限
 
   grant create session to lisi;                 //授予lisi会话的权限
 
   grant create table to lisi;                   //授予lisi创建表的权限
 
   grant unlinited tablespace to lisi;            //授予lisi无限制使用表空间的权限   
   revoke create session from lisi;             //撤销lisi会话的权限
 
   revoke create table from lisi;               //撤销lisi创建表的权限
 
   revoke unlimited tablespace to lisi;          //撤销lisi无限制使用表空间的权限
 
4、对象权限
 
   grant select on mytable to lisi;              //授予lisi查看mytable表的权限
 
   grant insert on mytable to lisi;              //授予lisi在mytable表中插入数据的权限
 
   grant all on mytable to lisi;                //授予lisi操作mytable表所有的权限
 
   revoke select on mytable from lisi;            //撤销lisi查看mytable表的权限
 
   revoke insert on mytable from lisi;            //撤销lisi在mytable表插入数据的权限
 
   revoke all on mytable from lisi;              //撤销lisi操作mytable表的所有权限 
 
5、给所有用户授予权限
 
   grant create any table to public;              //把创建表的权限授予给所有用户
 
   grant create session to public;               //把会话的权限授予给所有的用户
 
   grant unlinited tablespace to public;          //把无限之使用表空间的权限授予给所有的用户
 
   grant select on mytable to public;             //把查看mytable表的权限授予给所有用户 
 
   revoke create any table from public;           //撤销所有用户创建表的权限
 
   revoke create session from public;            //撤销多有用户的会话权限
 
   revoke unlinited tablespace from public;        //撤销用户无限制使用表空间的权限
 
6、使用数字字典
 
   select*from user_sys_privs;                 //查看当前用户拥有哪些系统权限
 
   select*from user_tab_privs;                 //查看当前用户拥有哪些对象权限
 
   select * from dba_users;                       //查看数据库里面所有用户,前dba权限的帐号,如sys,system
 
   select * from all_users;                         //查看你能管理的所有用户!
 
   select * from user_users;                      //查看当前用户信息 !
 
7、对象权限可以控制到列
 
   grant update(name) on mytable to lisi;        //授予lisi用户更新mytable表name列的权限
 
   grant insert(id) on mytable to lisi;           //授予lisi用户在mytable表id列插入数据的权限
 
   select*from user_col_privs;                  //查看当前用户拥有哪些列的对象权限
 
注意:查询和删除不能控制到列。                   //ddl  dml  dcl
 
8、系统权限的传递
 
   grant alter any table to lisi with admin option;       //超级管理员授予lisi修改任意表的管理权限
 
9、对象权限的传递
 
   grant select on  A  to lisi with grant option;    //把A表的查看权限授予给lisi   
 
10、设置命令行屏幕的宽度
 
set linesize 400                                //设置行的宽度为400
 
11、角色
 
create role myrole;                           //创建角色
 
grant create session to myrole;               //授予会话权限给角色
 
grant create table to myrole;                 //授予创建表权限给角色
 
drop role myrole;                            //删除角色
 
Create table
 
Create any table
 
Alter any table
 
Drop any table
 
注意:有些系统权限无法直接赋予角色
 
Grant unlinited tablespace to myrole;
 
Alter table
 
Drop table
 
表是属于某一个用户的,而角色不属于任一用户的,是共同拥有的。
 
12、获取表:  www.2cto.com  
 
select table_name from user_tables;                //当前用户的表       
 
select table_name from all_tables;                 //所有用户的表   
 
select table_name from dba_tables;                //包括系统表
 
select table_name from dba_tables where owner='用户名'
 
user_tables:
 
table_name,tablespace_name,last_analyzed等
 
dba_tables:
 
ower,table_name,tablespace_name,last_analyzed等
 
all_tables:
 
ower,table_name,tablespace_name,last_analyzed等
 
all_objects:
 
ower,object_name,subobject_name,object_id,created,last_ddl_time,timestamp,status等
 
13、获取表字段:
 
select * from user_tab_columns where Table_Name='用户表';
 
select * from all_tab_columns where Table_Name='用户表';
 
select * from dba_tab_columns where Table_Name='用户表';
 
user_tab_columns:
 
table_name,column_name,data_type,data_length,data_precision,data_scale,nullable,column_id等
 
all_tab_columns :
 
ower,table_name,column_name,data_type,data_length,data_precision,data_scale,nullable,column_id等
 
dba_tab_columns:
 
ower,table_name,column_name,data_type,data_length,data_precision,data_scale,nullable,column_id等
 
14、获取表注释:
 
select * from user_tab_comments
 
user_tab_comments:table_name,table_type,comments
 
相应的还有dba_tab_comments,all_tab_comments,这两个比user_tab_comments多了ower列。
 
15、获取字段注释:
 
select * from user_col_comments
 
user_col_comments:table_name,column_name,comments
 
相应的还有dba_col_comments,all_col_comments,这两个比user_col_comments多了ower列。
 

推荐阅读
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • Windows服务与数据库交互问题解析
    本文探讨了在Windows 10(64位)环境下开发的Windows服务,旨在定期向本地MS SQL Server (v.11)插入记录。尽管服务已成功安装并运行,但记录并未正确插入。我们将详细分析可能的原因及解决方案。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 本文详细分析了JSP(JavaServer Pages)技术的主要优点和缺点,帮助开发者更好地理解其适用场景及潜在挑战。JSP作为一种服务器端技术,广泛应用于Web开发中。 ... [详细]
  • Valve 发布 Steam Deck 的新版 Windows 驱动程序
    Valve 最新发布了针对 Steam Deck 掌机的 Windows 驱动程序,旨在提升其在 Windows 环境下的兼容性、安全性和性能表现。 ... [详细]
  • 深入理解 Oracle 存储函数:计算员工年收入
    本文介绍如何使用 Oracle 存储函数查询特定员工的年收入。我们将详细解释存储函数的创建过程,并提供完整的代码示例。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 在 Windows 10 中,F1 至 F12 键默认设置为快捷功能键。本文将介绍几种有效方法来禁用这些快捷键,并恢复其标准功能键的作用。请注意,部分笔记本电脑的快捷键可能无法完全关闭。 ... [详细]
  • 本文总结了2018年的关键成就,包括职业变动、购车、考取驾照等重要事件,并分享了读书、工作、家庭和朋友方面的感悟。同时,展望2019年,制定了健康、软实力提升和技术学习的具体目标。 ... [详细]
  • 在计算机技术的学习道路上,51CTO学院以其专业性和专注度给我留下了深刻印象。从2012年接触计算机到2014年开始系统学习网络技术和安全领域,51CTO学院始终是我信赖的学习平台。 ... [详细]
  • CSS 布局:液态三栏混合宽度布局
    本文介绍了如何使用 CSS 实现液态的三栏布局,其中各栏具有不同的宽度设置。通过调整容器和内容区域的属性,可以实现灵活且响应式的网页设计。 ... [详细]
  • Linux 系统启动故障排除指南:MBR 和 GRUB 问题
    本文详细介绍了 Linux 系统启动过程中常见的 MBR 扇区和 GRUB 引导程序故障及其解决方案,涵盖从备份、模拟故障到恢复的具体步骤。 ... [详细]
  • 本文介绍了如何使用jQuery根据元素的类型(如复选框)和标签名(如段落)来获取DOM对象。这有助于更高效地操作网页中的特定元素。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
author-avatar
卓慧大美女_502
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有