Oracle11g温习-第十六章:用户管理
2013年4月27日 星期六
10:50
1、概念 |
(1)schema : user.object 就是用户创建的对象 (2)用户认证方式: os 认证 database 认证 |
2、建立 database认证的用户 |
SQL @ prod > create user rose identified by oracle default tablespace users temporary tablespace temp quota 10m on users 【用户配额限制】 password expire; ——【用户一登录密码就过期,需要重新设定】 User created. SQL @ prod > grant create session to rose; Grant succeeded. SQL @ prod > conn rose/oracle ERROR: ORA-28001: the password has expired
Changing password for rose …. New password: ... Retype new password: ... Password changed Connected. |
3、建立OS认证(操作系统认证)用户(sys 用户属于os 认证) |
SQL @ prod > show parameter auth NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ os_authent_prefix string ops$ 【——创建OS认证的用户名前面一定要加上这个参数】 remote_os_authent boolean FALSE SQL @ prod > create user ops$oracle ——创建用户,不要加双引号 identified externally profile default default tablespace users temporary tablespace temp quota 10m on users
SQL @ prod > select username,account_status from dba_users;
USERNAME ACCOUNT_STATUS --------------- ------------------------- OUTLN OPEN SYS OPEN SYSTEM OPEN ROSE OPEN SCOTT OPEN ops$oracle OPEN TOM OPEN DBSNMP EXPIRED & LOCKED TSMSYS EXPIRED & LOCKED DIP EXPIRED & LOCKED SQL @ prod > select username ,password ,PROFILE,DEFAULT_TABLESPACe,TEMPORARY_TABLESPACE from dba_users; USERNAME PASSWORD PROFILE DEFAULT_TABLESP TEMPORARY_TABLE --------------- -------------------- --------------- --------------- --------------- OUTLN 4A3BA55E08595C81 DEFAULT SYSTEM TEMP SYS 8A8F025737A9097A DEFAULT SYSTEM TEMP SYSTEM 2D594E86F93B17A1 DEFAULT SYSTEM TEMP ROSE 1166A1F535AF6EFB DEFAULT USERS TEMP SCOTT F894844C34402B67 DEFAULT USERS TEMP ops$oracle EXTERNAL DEFAULT USERS TEMP TOM 0473A0A9140BFBD7 DEFAULT USERS TEMP DBSNMP E066D214D5421CCC DEFAULT SYSAUX TEMP TSMSYS 3DF26A8B17D0F29F DEFAULT USERS TEMP DIP CE4A36B8E06CA59C DEFAULT USERS TEMP SQL @ prod > grant create session to ops$oracle; Grant succeeded. SQL @ prod > exit Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - Production With the Partitioning, OLAP and Data Mining options [oracle@solaris10 ~]$ id uid=100(oracle) gid=100(oinstall) [oracle@solaris10 ~]$ sqlplus / ——【登录不需要提供用户名和密码(oracle用户必须属于os的 oinstall 组 )】 SQL*Plus: Release 10.2.0.2.0 - Production on Wed Mar 14 16:07:43 2012 Copyright (c) 1982, 2005, Oracle. All Rights Reserved. Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - Production With the Partitioning, OLAP and Data Mining options SQL @ prod > show user USER is "OPS$ORACLE" |
4、quota 管理:(对象的最大存储空间,用户在表空间上建立对象,必须在相应的tablespace 上获得quota) |
SQL @ prod > select TABLESPACE_NAME,USERNAME,BYTES/1024,MAX_BYTES/1024/1024 from dba_ts_quotas; TABLESPACE_NAME USERNAME BYTES/1024 MAX_BYTES/1024/1024 -------------------- --------------- ---------- ------------------- USERS ROSE 0 10 USERS OPS$ORACLE 0 10 ——【BYTES 已经使用过的配额,MAX_BYTES所分配的配额】 SQL @ prod > grant create table to rose; Grant succeeded. SQL @ prod > grant select on scott.emp to rose; Grant succeeded. SQL @ prod > conn rose/rose Connected. SQL @ prod > create table emp1 as select * from scott.emp; Table created. SQL @ prod > conn /as sysdba Connected. SQL @ prod > select TABLESPACE_NAME,USERNAME,BYTES/1024,MAX_BYTES/1024/1024 from dba_ts_quotas where username='ROSE'; TABLESPACE_NAME USERNAME BYTES/1024 MAX_BYTES/1024/1024 -------------------- --------------- ---------- ------------------- USERS ROSE 64 10 ——回收quota【只能回收用户未使用的磁盘配额】 SQL @ prod > alter user rose quota 0 on users; User altered. SQL @ prod > select TABLESPACE_NAME,USERNAME,bytes/1024,max_bytes/1024/1024 from dba_ts_quotas where username='ROSE'; no rows selected 【——已经回收,但仍然可以插入数据,因为之前已经使用的磁盘配额没用完】 SQL @ prod > conn rose/rose Connected. ROSE @ prod > insert into emp1 select * from emp1; 14 rows created. ROSE @ prod > / 28 rows created. ROSE @ prod > / 56 rows created. ROSE @ prod > insert into emp1 select * from emp1 * ERROR at line 1: 【ORA-01536: space quota exceeded for tablespace 'USERS'
ROSE @ prod > analyze table emp1 compute statistics; ——没磁盘配额了 】 Table analyzed. ROSE @ prod > select table_name,num_rows ,blocks,empty_blocks from user_tables; TABLE_NAME NUM_ROWS BLOCKS EMPTY_BLOCKS ------------------------------ ---------- ---------- ------------ EMP1 448 8 0 |
5、删除用户【会话中的用户不能被删除】 |
SYS @ prod > select username,sid,serial# from v$session where username is not null; USERNAME SID SERIAL# ---------- ---------- ---------- SYS 31 84 ROSE 39 31 SYS @ prod > drop user rose;——会话中的用户不能被删除 drop user rose * ERROR at line 1: ORA-01940: cannot drop a user that is currently connected ——强制关闭用户会话 SYS @ prod > alter system kill session '39,31';——‘SID,SERIAL#’ System altered. SYS @ prod > select * from emp1; select * from emp1 * ERROR at line 1: ORA-00028: your session has been killed SYS @ prod > drop user rose cascade; ——将用户所有的对象都一起删除 User dropped. |
磁盘配额 create user xxx quota 50m on system 指定用户在system 上50M 的磁盘空间。 alter system kill session 'sid,serial#' 杀掉用户进程 desc v$process 查找 ADDR SPID desc session_privs 用户权限。 desc session_roles set role develogment , manager desc dba_role_privs; alter user xxxx default role |
Oracle11g温习-第十六章:用户管理的更多相关文章
- Linux学习之十六-Linux用户管理
Linux用户管理 Linux系统跟Windows系统一样,可以创建不同的用户,不同的用户组.在不同用户下使用系统具有相应的权限 创建一个普通用户时,会修改几个文件,拷贝一些初始文件到用户家目录中 修 ...
- .NET Core实战项目之CMS 第十六章 用户登录及验证码功能实现
前面为了方便我们只是简单实现了基本业务功能的增删改查,但是登录功能还没有实现,而登录又是系统所必须的,得益于 ASP.NET Core的可扩展性因此我们很容易实现我们的登录功能.今天我将带着大家一起来 ...
- Oracle11g温习-第十八章:role管理
2013年4月27日 星期六 10:52 role 的功能:简化用户的权限管理 建立角色——给角色授权——将角色授予用户/角色 2.查看系统建立的role SYS @ prod > selec ...
- Oracle11g温习-第十二章:tables
2013年4月27日 星期六 10:44 1.表的功能 存储.管理数据的基本单元(二维表:由行和列组成) 2.表的类型 1)普通表:[heap table(堆表) :数据存储时,无序的,对它的访问采 ...
- Oracle11g温习-第十九章:审计(audit)
2013年4月27日 星期六 10:52 1.审计的功能:监控用户在database 的 action (操作) 2.审计分类 1) session :在同一个session,相同的语句只产生一个审计 ...
- Oracle11g温习-第十四章:约束( constraint )
2013年4月27日 星期六 10:48 1.约束的功能 通过一些强制性商业规则,保证数据的完整性.一致性 2.约束的类别 1 ) not null 不允许为空 2 ) check ...
- Gradle 1.12用户指南翻译——第二十六章. War 插件
其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://g ...
- Gradle 1.12用户指南翻译——第三十六章. Sonar Runner 插件
本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...
- 鸟哥的linux私房菜——第十六章学习(程序管理与 SELinux 初探)
第十六章.程序管理与 SE Linux 初探 在 Linux 系统当中:"触发任何一个事件时,系统都会将他定义成为一个程序,并且给予这个程序一个 ID ,称为 PID,同时依据启发这个程序的 ...
随机推荐
- 【Hadoop 分布式部署 七: 使用ntp配置内网中集群机器时间同步 】
集群的时间要同步,如果时间不同步,会出现很多问题. 找一台机器做时间服务器 所有的机器与这台机器的时间进行定时的同步 比如,每日十分钟同步一次 我们这里使用 hadoop-senior.zuoyan ...
- swagger实战踩坑1
1.swagger error 有详细的错误信息 自己根据详细信息找问题 2.swagger error 无详细的错误信息 Controller是否重名=>重名,指定不同的 [Route(& ...
- Javascript 高级程序设计(第3版) - 第02章
2017-05-10 更新原文: http://www.cnblogs.com/daysme 在 html 中使用 js 把js代码写在 <script type="text/java ...
- [0412]SQL Server 2008 R2 安装 & 设置
SQL Server 2008 R2 安装 & 设置 Sql Server 安装 安装环境: Windows 10 1709 64位 安装文件: Sql Server 2008 R2 Sql ...
- ArrayList.clear、=null、new Arraylist之间的对比区别
参考博文 1.使用ArrayList的对象方法clear() List list = new ArrayList(); List list1 = list; list.add(1); list.add ...
- 在阿里云服务器上搭建xampp遇到的问题
参考文章:http://blog.csdn.net/hel12he/article/details/49781813 http://www.laozuo.org/8178.html http://bl ...
- PHP里获取一维数组里的最大值和最小值
<?php $arr = ['10','100','50','90','2','5']; $min = min($arr); $max = max($arr); echo $min.PHP_EO ...
- javaSE习题 第一章 JAVA语言概述
转眼就开学了,正式在学校学习SE部分,由于暑假放视频过了一遍,略感觉轻松,今天开始,博客将会记录我的课本习题,主要以文字和代码的形式展现,一是把SE基础加强一下,二是课本中有很多知识是视频中没有的,做 ...
- zzulioj 1206 字符串的修改 (字符串修改)
不难,理解一下直接过,代码如下: #include<stdio.h> #include<string.h> #include<math.h> #include< ...
- django 聚合内容 RSS/Atom
Django提供了一个高层次的聚合内容框架,让我们创建RSS/Atom变得简单,你需要做的只是编写一个简单的Python类. 一.范例 要创建一个feed,只需要编写一个Feed类,然后设置一条指向F ...