select * from role_tab_privs ; 数据字典视图包含了授予角色的对象权限
select * from role_role_privs ; 包含了授予另一角色的角色
select * from role_sys_privs ; 包含了授予角色的系统权限
-- 确定用户帐户所授予的权限
select * from DBA_tab_privs ; 直接授予用户帐户的对象权限
select * from DBA_role_privs ; 授予用户帐户的角色
select * from DBA_sys_privs ; 授予用户帐户的系统权限
查看当前用户权限:
SQL> select * from session_privs;
PRIVILEGE
----------------------------------------
CREATE SESSION
CREATE TABLE
CREATE CLUSTER
CREATE SYNONYM
CREATE VIEW
CREATE SEQUENCE
CREATE PROCEDURE
CREATE TRIGGER
8 rows selected.
[Oracle初始口令]
internal/oracle
sys/change_on_install
system/manager
scott/tiger
sysman/oem_temp
使用system\manager以SYSDBA登录时提示:"ORA-01031:insufficient privileges"。
使用system\manager以sysoper登录时提示:"ORA-01031:insufficient privileges"。
在sys用户下执行
SQL> grant sysdba to system;
Grant succeeded.
SQL> grant sysoper to system;
Grant succeeded.
然后再用system登陆就不会报权限不足的错误了
创建用户设置并权限:
identified by "jakbb"
default tablespace USERS
temporary tablespace TEMP
profile DEFAULT;
grant connect to JAKBB;
grant dba to JAKBB;
grant resource to JAKBB;
grant unlimited tablespace to JAKBB;
SQL> create tablespace jakbb_space datafile 'E:\oracle\product\10.1.0\oradata\or
cl\jakbb_data.dbf' size 200M online;
SQL> select username, default_tablespace from dba_users t where t.username='JAKBB' ;
查看用户默认的表空间.sql:
select username,default_tablespace from dba_users;
查看各个表空间占用磁盘情况.sql:
select
b.file_id 文件ID号,
b.tablespace_name 表空间名,
b.bytes/1024/1024||'M'字节数,
(b.bytes-sum(nvl(a.bytes,0)))/1024/1024||'M' 已使用,
sum(nvl(a.bytes,0))/1024/1024||'M' 剩余空间,
100 - sum(nvl(a.bytes,0))/(b.bytes)*100 占用百分比
from dba_free_space a,dba_data_files b
where a.file_id=b.file_id
group by b.tablespace_name,b.file_id,b.bytes
order by b.file_id
以上2者关联,就是查看用户默认表空间使用情况的sql语句:
Select *
FROM
(select username,default_tablespace from dba_users) ut,
(select
--b.file_id 文件ID号,
b.tablespace_name 表空间名,
b.bytes/1024/1024||'M'字节数,
(b.bytes-sum(nvl(a.bytes,0)))/1024/1024||'M' 已使用,
sum(nvl(a.bytes,0))/1024/1024||'M' 剩余空间,
100 - sum(nvl(a.bytes,0))/(b.bytes)*100 占用百分比
from dba_free_space a,dba_data_files b
where a.file_id=b.file_id
group by b.tablespace_name,b.file_id,b.bytes
order by b.file_id ) tsu
Where ut.default_tablespace = tsu.表空间名
orDER BY ut.username