user, user account, schema的区别A user isa person who connects to a user account by establishing a session against theinstance and log on with the user account nameA schemais a set of objects owned by a user account.用户账号的属性1、用户名(必须)2、认证方法(必须)3、默认表空间4、表空间的配额5、默认临时表空间6、用户的配置文件7、用户账号的状态用户名必须以字母开头,不能超过30个字符,可以包含字母,数字,$ 和下划线_,并且不能使用保留字;字母是大小写敏感的,但是存储的时候都会存储为大写。这些规则可以通过双引号打破;sql> create user"john%#" identified by pa55w0rd;用户名一旦创建就不允许修改,除非你把用户删掉重建,但是这个相当危险,因为你删除用户的同时会删除其所有对象;设置默认表空间:设置整个数据库的默认表空间:ALTER DATABASE DEFAULT TABLESPACE tablespacename;如果没有指定的话,默认的是SYSTEM表空间;--查看用户的默认表空间和临时空间selectusername,default_tablespace,temporary_tablespace from dba_users whereusername="SJ";配额是一个用户其拥有的对象在表空间中可以占用的容量;--更改一个用户在表空间中的配额alter user SJ quota500M on sj;--将一个用户在表空间中的配额更改为无限制alter user SJ quotaunlimited on sj;--查看用户在表空间中的配额情况selecttablespace_name,bytes,max_bytes from dba_ts_quotas where username="SJ";--查看整个数据库的默认表空间和默认临时表空间selectproperty_name,property_value from database_propertieswhere property_namelike "%TABLESPACE";临时表空间:当一个session进行某个操作时需要的内存容量超过了该session的PGA容量,那么这个时候session就会用到temporary tablespace;使用临时表空间的操作包括:1、行排序2、表连接 3、构建索引4、使用临时表临时表空间的空间管理时系统自动进行的用户不需要在临时表空间上分配配额,因为临时表空间的所有对象都属于SYS,SYS用户在所有表空间上都有unlimited的配额;--更改用户的临时表空间ALTER USER username TEMPORARYTABLESPACE tablespacename;当有大量用户使用同一个用户账户的时候,就会造成临时表空间的瓶颈,这个时候可以为每个账号分配自己的临时表空间 配置文件:Profile配置文件的主要作用:控制密码的设置格式并且限制用户对资源的占用情况; 用户账号状态:1、OPEN2、LOCKED3、EXPIRED4、EXPIRED&LOCKED5、EXPIRED(GRACE)6、LOCKED(TIMED)7、EXPIRED&LOCKED(TIMED)8、EXPIRED(GRACE)&LOCKED9、EXPIRED(GRACE)&LOCKED(TIMED) ALTER USER username ACCOUNT LOCK;ALTER USER username ACCOUNTUNLOCK;ALTER USER username PASSWORDEXPIRE; 认证方法1、操作系统认证:sysdba/sysoper2、密码文件认证: sysdba/sysoper3、密码认证4、external 认证5、global 认证 LDAP directory server--如果要查看哪些用户拥有sysdba/sysoper权限,可以查看V$PWFILE_USER视图;select * fromv$pwfile_users;还有一种权限也很特别SYSASM,这个权限是在ASM实例中使用的;SYS用户不允许使用密码认证方式进行连接,它只能使用密码文件方式,操作系统方式和LDAP认证方式;在建立连接时,密码在网络上传输的时候必须使用AES加密算法加密,对于其他会话内容是不提供加密的,如果需要加密,需要 AdvancedSecurity Option的支持;SYSTEM用户可以更改其他用户的密码:ALTER USER usename IDENTIFIED BYpassword;外部认证:If theAdvanced Security Option has been licensed , then the external service can beKerberos server, a RADIUS server, or inthe Windows native authenticationWithout the Advanced security Option, the only form of external authenticationthat can be used is operating system authentication;Thetechnique is to create an Oracle user account with the same name as theoperating system user account but prefixed with a string specified by theinstance parameter OS_AUTHENT_PREFIXselectvalue from v$parameter where name="os_authent_prefix";在linux或unix环境中创建外部操作系统认证的方法很简单,假定系统上有一个系统用户为cedar,在Oracle需要以下两步:createuser ops$cedar identified externally;grantcreate session to ops$cedar;在windos环境中,假定用户名为cedarfan 所在的域为DBA,那么在Oracle中需要如下的语句createuser "OPS$DBACEDAR FAN" identified externally;GlobalAuthenticationAnemerging standard for identity management makes user of LDAP servers
管理用户账号:--创建用户账号create user sjidentified by sjdefault tablespace sjtemporary tablespace tempquota 500M onsj,quota unlimited on usersprofile test_frofilepassword expireaccount unlock;--删除用户drop user sj --这个命令只有在该用户没有任何对象的情况下才能执行成功drop user sjcascade;--这个命令可以先删除对象,然后再删除用户Oracle用户配置文件概述Oracle权限和角色管理概述相关资讯 Oracle教程
- Oracle中纯数字的varchar2类型和 (07/29/2015 07:20:43)
- Oracle教程:Oracle中查看DBLink密 (07/29/2015 07:16:55)
- [Oracle] SQL*Loader 详细使用教程 (08/11/2013 21:30:36)
| - Oracle教程:Oracle中kill死锁进程 (07/29/2015 07:18:28)
- Oracle教程:ORA-25153 临时表空间 (07/29/2015 07:13:37)
- Oracle教程之管理安全和资源 (04/08/2013 11:39:32)
|
本文评论 查看全部评论 (0)