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"

4quota 管理:(对象的最大存储空间,用户在表空间上建立对象,必须在相应的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温习-第十六章:用户管理的更多相关文章

  1. Linux学习之十六-Linux用户管理

    Linux用户管理 Linux系统跟Windows系统一样,可以创建不同的用户,不同的用户组.在不同用户下使用系统具有相应的权限 创建一个普通用户时,会修改几个文件,拷贝一些初始文件到用户家目录中 修 ...

  2. .NET Core实战项目之CMS 第十六章 用户登录及验证码功能实现

    前面为了方便我们只是简单实现了基本业务功能的增删改查,但是登录功能还没有实现,而登录又是系统所必须的,得益于 ASP.NET Core的可扩展性因此我们很容易实现我们的登录功能.今天我将带着大家一起来 ...

  3. Oracle11g温习-第十八章:role管理

    2013年4月27日 星期六 10:52 role 的功能:简化用户的权限管理 建立角色——给角色授权——将角色授予用户/角色 2.查看系统建立的role SYS @ prod >  selec ...

  4. Oracle11g温习-第十二章:tables

    2013年4月27日 星期六 10:44 1.表的功能 存储.管理数据的基本单元(二维表:由行和列组成) 2.表的类型  1)普通表:[heap table(堆表) :数据存储时,无序的,对它的访问采 ...

  5. Oracle11g温习-第十九章:审计(audit)

    2013年4月27日 星期六 10:52 1.审计的功能:监控用户在database 的 action (操作) 2.审计分类 1) session :在同一个session,相同的语句只产生一个审计 ...

  6. Oracle11g温习-第十四章:约束( constraint )

    2013年4月27日 星期六 10:48 1.约束的功能 通过一些强制性商业规则,保证数据的完整性.一致性 2.约束的类别 1 )  not null    不允许为空     2 )  check  ...

  7. Gradle 1.12用户指南翻译——第二十六章. War 插件

    其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://g ...

  8. Gradle 1.12用户指南翻译——第三十六章. Sonar Runner 插件

    本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  9. 鸟哥的linux私房菜——第十六章学习(程序管理与 SELinux 初探)

    第十六章.程序管理与 SE Linux 初探 在 Linux 系统当中:"触发任何一个事件时,系统都会将他定义成为一个程序,并且给予这个程序一个 ID ,称为 PID,同时依据启发这个程序的 ...

随机推荐

  1. arm中断体系结构

     ARM处理器中有7种类型的异常,按优先级从高到低的排列如下:                   复位异常(Reset).     数据异常(Data Abort).     快速中断异常(FIQ) ...

  2. 剥开比原看代码10:比原是如何通过/create-key接口创建密钥的

    作者:freewind 比原项目仓库: Github地址:https://github.com/Bytom/bytom Gitee地址:https://gitee.com/BytomBlockchai ...

  3. 1、Python模块和包(0602)

    模块.异常.运行环境.mysqldb 模块: 顶层文件:作为整个文件的程序入口,就是负责去调用其他文件中的代码来实现程序流程功能的,称为顶层程序文件, 模块文件1 模块文件2 python模块 1.可 ...

  4. Scala语言学习

    Scala的程序被编译成Java字节码(生成class文件),所以可以运行在JVM上,并且可以调用Java的类库,兼容Java程序. Scala 是一门多范式(multi-paradigm)的编程语言 ...

  5. 利用JavaScriptSOAPClient直接调用webService --完整的前后台配置与调用示例

    JavaScriptSoapClient下载地址:https://archive.codeplex.com/?p=javascriptsoapclient JavaScriptSoapClient的D ...

  6. Java单例设计模式(实现Java的一个类只有一个对象)

    单例设计模式的定义:单例设计模式是一种软件设计模式,在它的核心包含一个称为单例类的核心类. 核心便是希望一个类只有一个对象.  如何实现类在内存中只有一个对象呢? 第一步:构造私有:第二步:本身提供一 ...

  7. uint8_t / uint16_t / uint32_t /uint64_t数据类型详解

    uint8_t / uint16_t / uint32_t /uint64_t 是什么数据类型? 在nesc的代码中,你会看到很多你不认识的数据类型,比如uint8_t等.咋一看,好像是个新的数据类型 ...

  8. _itemmod_gem_limit

    该表可以控制特定宝石的数量上限,即使玩家多插了宝石,也不会有相应效果 `entry` 宝石ID `limitCount`上限值 `comment`备注

  9. 折腾了好久的地图缩放 ngui 各种偷懒实现

    当时找到一篇cocos2dx 地图缩放的  很遗憾我用不了  也要记录一下 免得以后用ugui可以用 转 http://blog.csdn.net/cocosnode/article/details/ ...

  10. P1622 释放囚犯

    传送门 区间DP简介: 在写这题前,需要先弄清楚区间DP是如何操作的: 区间DP的做法还是相对固定的,没有其他类型DP的复杂多变.主要思想就是先在小区间进行DP得到最优解,然后再利用小区间的最优解合并 ...