- 用户信息表
用户信息表
dba_users
all_users
user_users
select username,account_status from dba_users;
select * from dba_users; 查看所有用户信息
3. 查看有哪些用户
select username from dba_users;
3. 查看某个用户的状态
select username,account_status from dba_users b where b.username=upper(’’);
用户被锁定,密码过期
4. 锁定账户
alter user account lock;
alter user scott account lock;
- 解锁账户
alter user account unlock;
alter user scott account unlock;
这时用户可以登录提示需要修改密码
修改密码后用户可以登录
- 修改密码
alter user identified by 密码
alter user scott identified by scott;
----先检索账户状态是否锁定,再检查密码对错
7 . 创建用户
create user 用户名 identified by 密码;
create user xiaoming identified by 123456;
8.删除用户
drop user xiaoming;
9.赋予用户权限
oracle提供三种标准角色(role):connect/resource和dba
(1)临时用户,特指不需要建表的用户,通常只赋予他们connect role.
connect是使用oracle简单权限,这种权限只对其他用户的表有访问权限,包括select/insert/update和delete等。
拥有connect role 的用户还能够创建表、视图、序列(sequence)、簇(cluster)、同义词(synonym)、回话(session)和其他 数据的链(link)。
(2)resource role(资源角色),更可靠和正式的数据库用户可以授予resource role。
resource提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器(trigger)、索引(index)和簇(cluster)。
(3)dba role(数据库管理员角色)
dba role拥有所有的系统权限
包括无限制的空间限额和给其他用户授予各种权限的能力。
语句命令:
grant connect, resource to user1;
- 删除用户权限
revoke connect, resource from user1;
- 查看所有角色
select * from dba_roles;
12.查看用户权限
select * from dba_sys_privs;
select * from user_sys_privs;(用户权限)
select * from role_sys_privs;(角色的权限)
abc用户下面执行
system用户下执行
13.查看用户对象权限
select * from dba_tab_privs;
select * from all_tab_privs;
select * from user_tab_privs;
查看用户或角色所拥有的角色:
select * from dba_role_privs;
select * from user_role_privs; 账号赋予的权限connect,resource,dba
查看哪些用户有sysdba或sysoper系统权限(查询时需要相应权限)
select * from V$PWFILE_USERS
比如我要查看用户 abc的拥有的权限:
SQL> select * from dba_sys_privs where grantee=‘abc’;
GRANTEE PRIVILEGE ADMIN_OPTION
abc CREATE TRIGGER NO
abc UNLIMITED TABLESPACE NO
比如我要查看用户abc的拥有的角色:
SQL> select * from dba_role_privs where grantee=‘abc’;
GRANTEE GRANTED_ROLE ADMIN_OPTION DEFAULT_ROLE
abc DBA NO YES
查看一个用户所有的权限及角色
select privilege from dba_sys_privs where grantee=‘abc’
union
select privilege from dba_sys_privs where grantee in
(select granted_role from dba_role_privs where grantee=‘abc’ );