|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
使为了数据安全,我们搭建了主从。但实时主从备份只能防止硬件问题,比如主库的硬盘损坏。但对于误操作,则无能为力。比如在主库误删一张表,或者一个update语句没有指定where条件,导致全表被更新。数据ORACLE的数据字典是数据库的主要构成部分之一,它跟着数据库的发生而发生,跟着数据库的变更而变更,表现为sys用户下的一些表和视图。数据字典称号是年夜写的英笔墨符。数据字典里存有效户信息、用户的权限信息、一切数据工具信息、表的束缚前提、统计剖析数据库的视图等。我们不克不及手工修正数据字典里的信息。 良多时分,一样平常的ORACLE用户不晓得怎样无效天时用它。 dictionary 全体数据字典表的称号息争释,它有一个同义词dictdict_column 全体数据字典内外字段称号息争释假如我们想查询跟索引有关的数据字典时,能够用上面这条SQL语句:SQL>select*fromdictionarywhereinstr(comments,index)>0;假如我们想晓得user_indexes表各字段称号的具体寄义,能够用上面这条SQL语句:SQL>selectcolumn_name,commentsfromdict_columnswheretable_name=USER_INDEXES;依此类推,就能够轻松晓得数据字典的具体称号息争释,不必检察ORACLE的别的文档材料了。上面按种别列出一些ORACLE用户经常使用数据字典的查询利用办法。1、用户检察以后用户的缺省表空间SQL>selectusername,default_tablespacefromuser_users;检察以后用户的脚色SQL>select*fromuser_role_privs;检察以后用户的体系权限和表级权限SQL>select*fromuser_sys_privs;SQL>select*fromuser_tab_privs;2、表检察用户下一切的表SQL>select*fromuser_tables;检察称号包括log字符的表SQL>selectobject_name,object_idfromuser_objectswhereinstr(object_name,LOG)>0;检察某表的创立工夫SQL>selectobject_name,createdfromuser_objectswhereobject_name=upper(&table_name);检察某表的巨细SQL>selectsum(bytes)/(1024*1024)as"size(M)"fromuser_segmentswheresegment_name=upper(&table_name);检察放在ORACLE的内存区里的表SQL>selecttable_name,cachefromuser_tableswhereinstr(cache,Y)>0;3、索引检察索引个数和种别SQL>selectindex_name,index_type,table_namefromuser_indexesorderbytable_name;检察索引被索引的字段SQL>select*fromuser_ind_columnswhereindex_name=upper(&index_name);检察索引的巨细SQL>selectsum(bytes)/(1024*1024)as"size(M)"fromuser_segmentswheresegment_name=upper(&index_name);4、序列号检察序列号,last_number是以后值SQL>select*fromuser_sequences;5、视图检察视图的称号SQL>selectview_namefromuser_views;检察创立视图的select语句SQL>setview_name,text_lengthfromuser_views;SQL>setlong2000;申明:能够依据视图的text_length值设定setlong的巨细SQL>selecttextfromuser_viewswhereview_name=upper(&view_name);6、同义词检察同义词的称号SQL>select*fromuser_synonyms;7、束缚前提检察某表的束缚前提SQL>selectconstraint_name,constraint_type,search_condition,r_constraint_namefromuser_constraintswheretable_name=upper(&table_name);SQL>selectc.constraint_name,c.constraint_type,cc.column_namefromuser_constraintsc,user_cons_columnsccwherec.owner=upper(&table_owner)andc.table_name=upper(&table_name)andc.owner=cc.ownerandc.constraint_name=cc.constraint_nameorderbycc.position;8、存储函数和历程检察函数和历程的形态SQL>selectobject_name,statusfromuser_objectswhereobject_type=FUNCTION;SQL>selectobject_name,statusfromuser_objectswhereobject_type=PROCEDURE;检察函数和历程的源代码SQL>selecttextfromall_sourcewhereowner=userandname=upper(&plsql_name);9、触发器检察触发器setlong50000;setheadingoff;setpagesize2000;selectcreateorreplacetrigger"||trigger_name||"||chr(10)||decode(substr(trigger_type,1,1),A,AFTER,B,BEFORE,I,INSTEADOF)||chr(10)||triggering_event||chr(10)||ON"||table_owner||"."||table_name||"||chr(10)||decode(instr(trigger_type,EACHROW),0,null,FOREACHROW)||chr(10),trigger_bodyfromuser_triggers;既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中。 |
|