oracle用户管理, 授权与回收权限
一. 用户管理参数,
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用户管理, 授权与回收权限的更多相关文章
- Oracle用户、授权、角色管理
创建和删除用户是Oracle用户管理中的常见操作,但这其中隐含了Oracle数据库系统的系统权限与对象权限方面的知识.掌握还Oracle用户的授权操作和原理,可以有效提升我们的工作效率. Oracle ...
- Oracle 用户、授权、角色管理
Oracle 用户管理 一.创建用户的Profile文件SQL> create profile student limit // student为资源文件名FAILED_LOGIN_ATTEMP ...
- Oracle 用户管理权限
Oracle 用户管理权限 一.创建用户的Profile文件 SQL> create profile student limit // student为资源文件名 FAILED_LOGIN_AT ...
- Oracle 用户管理与权限控制
Oracle 用户管理与权限控制 oracle数据库的权限系统分为系统权限与对象权限.系统权限( database system privilege )可以让用户执行特定的命令集.例如,create ...
- Oracle的学习一:安装与卸载、sql *plus常用命令、Oracle用户管理
1.为什么学习oracle? 性能优越: 小型数据库 中型数据库 大型数据库 acess.foxbase mysql.sql server.informix sybase.oracle.db2 复杂量 ...
- 三、oracle 用户管理一
三.oracle 用户管理一 一.创建用户概述:在oracle中要创建一个新的用户使用create user语句,一般是具有dba(数据库管理员)的权限才能使用.create user 用户名 ide ...
- Oracle—用户管理的完全恢复(一)
一.分类 可以分为在非归档模式下和归档模式下的完全恢复,完全恢复主要是针对归档模式下的,在非归档模式下很难做到完全恢复,除非是在做恢复时,联机重做日志还没有被重写. 二.非归档的有关性质 1.在非归档 ...
- Oracle—用户管理的完全恢复(四)
在用户管理的备份(三)中,最后打开数据库时,用了alter database open resetlogs;的命令,这里为什么用resetlogs命令? 一.resetlogs的作用 1.将当前的日志 ...
- Oracle—用户管理的备份(一)
用户管理的备份(一) 一.首先要知道数据库中表空间和文件的信息,有几个性能视图,v$datafile,v$tablespace,v$tempfile,v$logfile,v$controlfile,d ...
随机推荐
- Java流程控制之选择语句
选择语句 选择语句也称之为判断语句,主要有2种写法,一种是if语句,一种是switch语句.下面我们就详细的介绍一下这2种语句的用法. 判断语句if if语句第一种形式: if 格式: 执行流程 首先 ...
- 配置SQL Server维护计划-定时备份
目录 创建维护计划 创建任务 配置维护计划的依赖环境 还原数据库 创建维护计划 打开SQL Server 2014 Management Studio,用SQL Server管理员账户登录. 展开Ma ...
- 【UOJ276】【清华集训2016】汽水(分数规划+点分治)
点此看题面 大致题意: 给你一棵树,要求你选择一条树上路径,使得这条路径上边权的平均值与定值\(k\)的差的绝对值最小.求出这个最小值. 分数规划 看到平均值,首先就应该想到分数规划吧. 我们二分答案 ...
- Go语言系列教程
一 Go介绍与开发环境搭建 01-Go语言简介 02-开发环境搭建 03-Go语言集成开发环境之GoLand安装使用 04-Go语言集成开发环境之VS Code安装使用 05-Go包管理详解 二 Go ...
- Windows下怎么执行shell脚本
1.在windows下想要执行shell脚本,需要使用到"Git Bash",所以我们需要先安装Git. 2.查看Git环境变量是否配置,没有配置需要配置(我这里安装Git时自动配 ...
- 如何将Azure SQL 数据库还原到本地数据库实例中
原文:https://www.jerriepelser.com/blog/restore-sql-database-localdb/ 原文作者: Jerrie Pelser 译文:如何将Azure S ...
- Vs Code 2019软件安装教程及常用的入门设置
小编认为VsCode是一款非常好用的编辑器,插件丰富,支持的语言种类非常多.我所使用VsCode主要打一些前端的代码,自己感觉very good. 点击运行. 按图所示操作. 安装教程很简单的,主要是 ...
- Unity TextMeshPro替代Text组件创建简体中文字体纹理集
Unity原生的Text组件有一个毛病,只要文本放大字体放大就会有毛边或锯齿,一个更好的解决方案是用TextMeshPro替代ugui中的Text组件. TMPro采用SDF文字渲染技术,可以使文字放 ...
- MySQL数字类型学习笔记
数字类型 最近在看<MySQL技术内幕:SQL编程>并做了笔记,所以本博客是一篇笔记类型博客,分享出来方便自己复习,也可以帮助他人 整型 类型 占用空间 最小值(SIGNED) 最大值(S ...
- app自动化测试初体验
一.appium环境开启 1.开启MUMU模拟器/真机(真机需要开启“USB开发调试模式”),使用命令行adb devices检查设备是否正常连接 2.开启appium 双击运行appium应用 正常 ...