一. 用户管理参数,

0.删除用户: drop user 用户名 [cascade]

  当我们删除用户时, 如改用户已创建过数据对象, 那么删除用户时必须加cascade参数, 用来同步删除

  改用户的所有信息. 如还想使用该用户的数据, 则不可删除用户, 可以冻结该用户即可.

1.创建用户方法一:

  create user 用户名 identified by 密码 ;  # 创建用户, 但缺少必要的东西, 完整命令看下面.

  创建的用户没有任何权限.ORA-01045: user QUZQ lacks CREATE SESSION privilege; logon denied

  需要dba给新建的用户进行授权,如下: 基本语法: grant 权限/角色 to 用户

  grand connect to 用户名    # 授权可以链接数据库

  grand resource to 用户名   # 授权建表无空间大小的限制

  grand dba to 用户名            # 设置用户为dba

  grand create session to 用命名  # create session权限即登陆数据库实列

  使用revoke命令可回收权限或角色,  语法: revoke  权限/角色  from  用户

  角色就是权限的一个集合, 角色分为预先定义(即oracle定义的) 和 自定义的

2.创建用户方法二:

  sql > create user 用户名 identified by 密码

    default tabspace users  # 指定新建用户的表空间为users, users是oracle自带的一个表空间

    temporary tablespace temp  # 指定临时表空间为temp, temp空间也是oracle自带的

    quota 3m on users;   # 用来限制改用户创建的数据对象最大只能是3M

3.oracle中用户的权限管理概念图如下:

  

二. 用户方案

  oracle会给每个用户创建个方案(方案可理解为用户的独立存储空间; 把oracle比喻成一个大房子, 那方案就相当于是大房子

  中隔出来的小房子, 每当添加个oracle用户时, 就会在大房子里隔出个小屋), 当然前提是该用户要创建数据对象, 不然是不会

  被分配方案的. 每个用户的方案都是隔离的, 各个方案中的表名都可以相同; oracle给用户创建的方案名同用户名.

  1. 现有两个用户, user1和user2, 如何实现user1来访问user2中的stu表呢? 正常情况这两用户是不能互相访问的.

    首先使用user2登陆, 执行授权命令,如下:

    grant select [update | delete | insert | all ] on stu to user1   # 参数为all时, 表示增删改查

    然后使用user1登陆, 执行相应命令, 语法如下:

    select * from user2.stu   # select * from 方案名.表明

  2. 有三个用户, user1和user2和user3, 如何把user1的stu表权限给user2,并由user2再把user1的stu表权限给user3呢

    这里涉及两个命令: with admin option  # 如果是支配系统权限, 则使用这个命令; 用于系统权限

            with grant option  # 得到权限的用户, 可继续分配权限, 即有支配所得权限的能力; 用于对象权限

    grant all on user1.stu to user2 with grant option    # 登陆user1前提下给user2支配stu表和crud该表的能力

    grant all on user1.stu to user3  # 登陆user2把user1的stu表增删该查权限给user3, 但user3无再分配权限的能力

三. 用户管理之限制登陆次数, 锁定账户时长

  1. 创建profile限制集合, 用于配置限制的设置

    create profile 集合名 limit failed_login_attempts 3 password_lock_time 2;

    limit failed_login_attempts 3  # 限制登陆次数为3

    password_lock_time 2          # 3次失败后账户锁定2天

  2. 把创建好的限制集合分配给用户user1

    alter user user1 profile 集合名;

  3. profile是口令限制.资源限制的命令集合, 当建立用户没有指定frofile选项, oracle将会产生个名为default的profile,

    并将该default分配给用户.

oracle用户管理, 授权与回收权限的更多相关文章

  1. Oracle用户、授权、角色管理

    创建和删除用户是Oracle用户管理中的常见操作,但这其中隐含了Oracle数据库系统的系统权限与对象权限方面的知识.掌握还Oracle用户的授权操作和原理,可以有效提升我们的工作效率. Oracle ...

  2. Oracle 用户、授权、角色管理

    Oracle 用户管理 一.创建用户的Profile文件SQL> create profile student limit // student为资源文件名FAILED_LOGIN_ATTEMP ...

  3. Oracle 用户管理权限

    Oracle 用户管理权限 一.创建用户的Profile文件 SQL> create profile student limit // student为资源文件名 FAILED_LOGIN_AT ...

  4. Oracle 用户管理与权限控制

    Oracle 用户管理与权限控制 oracle数据库的权限系统分为系统权限与对象权限.系统权限( database system privilege )可以让用户执行特定的命令集.例如,create ...

  5. Oracle的学习一:安装与卸载、sql *plus常用命令、Oracle用户管理

    1.为什么学习oracle? 性能优越: 小型数据库 中型数据库 大型数据库 acess.foxbase mysql.sql server.informix sybase.oracle.db2 复杂量 ...

  6. 三、oracle 用户管理一

    三.oracle 用户管理一 一.创建用户概述:在oracle中要创建一个新的用户使用create user语句,一般是具有dba(数据库管理员)的权限才能使用.create user 用户名 ide ...

  7. Oracle—用户管理的完全恢复(一)

    一.分类 可以分为在非归档模式下和归档模式下的完全恢复,完全恢复主要是针对归档模式下的,在非归档模式下很难做到完全恢复,除非是在做恢复时,联机重做日志还没有被重写. 二.非归档的有关性质 1.在非归档 ...

  8. Oracle—用户管理的完全恢复(四)

    在用户管理的备份(三)中,最后打开数据库时,用了alter database open resetlogs;的命令,这里为什么用resetlogs命令? 一.resetlogs的作用 1.将当前的日志 ...

  9. Oracle—用户管理的备份(一)

    用户管理的备份(一) 一.首先要知道数据库中表空间和文件的信息,有几个性能视图,v$datafile,v$tablespace,v$tempfile,v$logfile,v$controlfile,d ...

随机推荐

  1. Linux学习笔记-第19天 结束了。突然感觉配置一个服务好简单的样子

    课程结束了,这本书又过了一遍,感觉学习到了不少的新知识.虽然整个过程老师讲的有点仓促,但回头想想身处于这个知识大爆炸的时代,学习不单要追求知识面宽广,更需要注重学习的效率,某种角度来讲,这也是一种鞭策 ...

  2. eclipse中的clean操作

    在eclipse中写JavaWeb项目时,有时候会出现代码修改了,但是执行的效果还是修改之前的,这时候clean一下就会解决问题 1.clean操作 Project---->clean---&g ...

  3. 大话设计模式Python实现-组合模式

    组合模式(Composite Pattern):将对象组合成成树形结构以表示“部分-整体”的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性. 下面是一个组合模式的demo: #!/us ...

  4. 英语阅读——Speaking Chinese in America

    这篇文章是<新视野大学英语>第四册的第五单元的文章,第一遍英语阅读完后对比中文,发现自己对作者的观点理解有些出入.作者反对的是认为中国说话客套而美国人直接的观点,利用自己的经历表达了中文也 ...

  5. IDEA maven设置配置

    IDEA Maven配置 1. 下载maven 下载地址 从官网上,下载一个压缩包,然后解压到任意的文件夹 Maven的安装必须需要jdk1.7+ 2. 环境变量设置 M2_HOME改为具体的路径,其 ...

  6. 使用C#+Edge (Chromium)进行Web自动化测试

    今天看到了VisualStudio中现在已经自带了Web单元测试项目模板,便试了一下,发现还比较好用,它默认的是Selenium实现的,测试组在用Selenium+Python来写过自动化测试,原来它 ...

  7. python中13个实用的文件操作

    1. 判断指定目录是否存在: os.path.exists(input_folder) 2. 判断指定目录是不是文件夹 os.path.isdir(input_folder) 3. 判断指定目录是不是 ...

  8. Python爬取Boss直聘,帮你获取全国各类职业薪酬榜

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 王翔 清风Python PS:如有需要Python学习资料的小伙伴 ...

  9. PlayJava Day008

    今日所学: /* 2019.08.19开始学习,此为补档. */ 1.包装类:对基本数据类型进行封装,使其具有属性和方法. Integer s1 = new Integer(123) ; Intege ...

  10. PHP+Ajax手机移动端发红包实例

    基本流程:当输入完红包数量和总金额后,PHP会根据这两个值进行随机分配每个金额,保证每个人都能领取到一个红包,且每个红包金额不等,并且所有红包金额总额等于总金额. 实现原理:设定总金额为10元,有N个 ...