SQL> select * from dba_users; USERNAME USER_ID PASSWORD ACCOUNT_STATUS LOCK_DATE EXPIRY_DATE DEFAULT_TABLESPACE TEMPORARY_TABLESPACE CREATED ------------ ---------- ---------- ----------------- ----------- ----------- ------------------- ---------------------- ----------- SCOTT 84 OPEN 2017/8/20 0 USERS TEMP 2009/8/15 0 LIJIAMAN 91 OPEN 2017/10/31 USERS TEMP 2017/2/25 1 ORACLE_OCM 21 EXPIRED & LOCKED 2009/8/15 0 2009/8/15 0 USERS TEMP 2009/8/15 0 XS$NULL 2147483638 EXPIRED & LOCKED 2009/8/15 0 2009/8/15 0 USERS TEMP 2009/8/15 0
2.3 创建用户
创建用户语法如下:
CREATE USER user_name IDENTIFIED
[BY password] |
[EXTERNALLY [AS ‘certificate_DN’ | ‘kerberos_principal_name'] ] |
[GLOBALLY [AS 'directory_DN'] ]
[DEFAULT TABLESPACE tablespace_name]
[TEMPORARY TABLESPACE tablespace_name | tablespace_group_name]
[QUOTA n K | M | UNLIMITED ON tablespace_name]
[PROFILE profile_name]
[PASSWORD EXPIRE]
[ACCOUNT LOCK | UNLOCK];
其中:
-user_name:新创建的用户的名称;
-IDENTIFIED:指明用户认证方式;
-BY password:采用数据库身份认证,password为用户密码;
-EXTERNALLY:指定用户采用外部认证,其中:①AS ‘certificate_DN’指定用户采用ssl外部身份认证;②AS ‘kerberos_principal_name’指定用户采用kerberos外部身份认证;
-GLOBALLY AS ‘directory_DN’:指定用户采用全局身份认证;
-DEFAULT TABLESPACE tablespace_name:设置用户的默认表空间;
-TEMPORARY TABLESPACE tablespace_name | tablespace_group_name:设置用户临时表空间/表空间组;
-QUOTA n K|M|UNLIMITED ON tablespace_name:指定用户在特定表空间上的配额;
-PROFILE profile_name:为用户指定概要文件;
-PASSWORD EXPIRE:指定用户密码到期,用户首次登陆时系统会要求改密码;
-ACCOUNT LOCK|UNLOCK:指定用户为锁定/非锁定状态,默认不锁定。
2.4 修改用户
修改用户采用ALTER实现,语句与CREATE USER基本相同,唯一不同的是多了DEFAULT ROLE选项,用于指定用户的默认角色:
ALTER USER user_name ... [DEFAULT ROLE [role_list] | [ALL [EXCEPT role_list]] | NONE ] ... ;
其中:-role_list:指定角色列表;
-ALL:指定全部角色;
-EXCEPT role_list:除了role_list指定的角色之外的角色;
-NONE:不指定角色 .
2.5 锁定与解锁用户
当用户被锁定后,就不能登录数据库了,但是用户的所有数据库对象仍然可以继续使用,当用户解锁后,用户就可以正常连接到数据库。
在Oracle中,当账户不再使用时,就可以将其锁定。通常,对于不用的账户,可以进行锁定,而不是删除。
例子,锁定与解锁scott用户: