檢視使用者系統許可權:
sql> select * from user_sys_privs;
檢視使用者擁有的角色
sql> select * from user_role_privs;
檢視當前會話的許可權
sql> select * from session_privs;
privilege
create session
unlimited tablespace
create table
create cluster
create view
create sequence
create procedure
create trigger
create type
create operator
create indextype
檢視使用者下所有的表
sql>select * from user_tables;
檢視某錶的建立時間
select object_name,created from user_objects
檢視某錶的大小
select sum(bytes)/(1024*1024) size_m,segment_name from user_segments group by segment_name;
檢視放在oracle的記憶體區里的表
sql> select table_name,cache from user_tables where instr(cache,'y')>0;
1.1.3 檢視檢視,索引
檢視使用者的檢視
select * from user_views;
檢視使用者的索引
sql> select * from user_indexes;
檢視索引個數和類別
sql>select index_name,index_type,table_name from user_indexes order by table_name;
檢視索引被索引的字段
sql>select * from user_ind_columns where index_name=upper(『&index_name』);
檢視索引的大小
sql>select sum(bytes)/(1024*1024) as 「size(m)」 from user_segments
where segment_name=upper(『&index_name』);
檢視函式和過程的狀態
sql>select object_name,status from user_objects where object_type=』function』;
sql>select object_name,status from user_objects where object_type=』procedure』;
檢視函式和過程的源**
sql>select text from all_source where owner=user and name=upper(『&plsql_name』);
1.1.5檢視序列號
select * from user_sequences;
1.1.6檢視同義詞
select * from user_synonyms;
1.1.7檢視某錶的約束條件
sql> select constraint_name, constraint_type,search_condition, r_constraint_name
2 from user_constraints
3 where table_name ='family';
1.2 資料的匯出
建立dump路徑
sql> connect / as sysdba
connected.
sql> create directory dump_dir as '/oracle';
sql> grant read,write on directory dump_dir to u1;
按照使用者匯出,可以匯出儲存過程,資料,檢視,索引等。
expdp system/oracle schemas=u1 dumpfile='u1.dump' directory=dump_dir version=10.2.0.1.0
sql> create tablespace u1
2 logging
3 datafile '/home/oracle/oradata/db1/u1.dbf'
4 size 30m
5 autoextend on
6 next 32m
7 maxsize 100m
8 extent management local;
sql> create user u1 identified by tiger default tablespace u1;
grant resource,connect to u1;
建立dump路徑
sql> connect / as sysdba
connected.
sql> create directory dump_dir as '/oracle';
sql> grant read,write on directory dump_dir to u1;
impdp system/oracle schemas=u1 dumpfile='u1.dump' directory=dump
[oracle@host2 ~]$ expdp system/oracle tablespaces=u1 dumpfile='u1_version.dump' directory=dump_dir version=10.2.0.1.0
[oracle@host2 oracle]$ impdp system/oracle tablespaces=u1 directory=dump dumpfile='u1_version.dump' version=10.2.0.1.0
expdp system/oracle tablespaces=u1 dumpfile='u1_all.dump' directory=dump_dir version=10.2.0.1.0 content=all
procedure也可以換成其它物件如:index,table,function,view,database link,synonym,package body,sequence,lob,package,procedure
[oracle@host2 oracle]$ expdp system/oracle schemas=u1 dumpfile='u1_p.dump' directory=dump_dir version=10.2.0.1.0 include=procedure
oracle 10 資料庫覆蓋
同事經常發來乙個dmp檔案,要求覆蓋資料庫,我一般用下面的方法完成 首先刪除該使用者,再新建使用者,匯入資料到該使用者。1 drop user username cascade 2 新建使用者 付權 3 匯入資料 imp 今天導資料時遇到乙個很奇怪的問題,一直報 ora 01940 無法刪除當前已連...
oracle 10 資料庫系統表應用
查詢共有多少個系統owner select distinct owner from all tab comments t 查詢某個owner的所有表 select from all tab comments t where owner marineadmin 列資訊 select from all ...
製作Oracle10資料庫的啟動指令碼
安裝好資料庫後,啟動資料庫必須以oracle使用者身份進行。可以通過sqlplus管理器來啟動資料庫。以sysdba身份登入,可以啟動,命令如下 sqlplus as sysdba 進入之後,startup 即可啟動。但是想要外面連線到這個資料庫,必須還要啟動它的 lsnrctl start 之後顯...