Êý¾Ý×ÖµäÊÇOracle´æ·ÅÓйØÊý¾Ý¿âÐÅÏ¢µÄµØ·½£¬ÆäÓÃ;ÊÇÓÃÀ´ÃèÊöÊý¾ÝµÄ¡£±ÈÈçÒ»¸ö±íµÄ´´½¨ÕßÐÅÏ¢£¬´´½¨Ê±¼äÐÅÏ¢£¬ËùÊô±í¿Õ¼äÐÅÏ¢£¬Óû§·ÃÎÊȨÏÞÐÅÏ¢µÈ¡£µ±Óû§ÔÚ¶ÔÊý¾Ý¿âÖеÄÊý¾Ý½øÐвÙ×÷ʱÓöµ½À§ÄѾͿÉÒÔ·ÃÎÊÊý¾Ý×ÖµäÀ´²é¿´ÏêϸµÄÐÅÏ¢¡£
OracleÖеÄÊý¾Ý×ÖµäÓо²Ì¬ºÍ¶¯Ì¬Ö®·Ö¡£¾²Ì¬Êý¾Ý×ÖµäÖ÷ÒªÊÇÔÚÓû§·ÃÎÊÊý¾Ý×Öµäʱ²»»á·¢Éú¸Ä±äµÄ£¬µ«¶¯Ì¬Êý¾Ý×ÖµäÊÇÒÀÀµÊý¾Ý¿âÔËÐеÄÐÔÄܵģ¬·´Ó³Êý¾Ý¿âÔËÐеÄһЩÄÚÔÚÐÅÏ¢£¬ËùÒÔÔÚ·ÃÎÊÕâÀàÊý¾Ý×ÖµäʱÍùÍù²»ÊÇÒ»³É²»±äµÄ¡£ÒÔÏ·ֱð¾ÍÕâÁ½ÀàÊý¾Ý×ÖµäÀ´ÂÛÊö¡£
1£® ¾²Ì¬Êý¾Ý×Öµä
ÕâÀàÊý¾Ý×ÖµäÖ÷ÒªÊÇÓɱíºÍÊÓͼ×é³É£¬Ó¦¸Ã×¢ÒâµÄÊÇ£¬Êý¾Ý×ÖµäÖеıíÊDz»ÄÜÖ±½Ó±»·ÃÎʵģ¬µ«ÊÇ¿ÉÒÔ·ÃÎÊÊý¾Ý×ÖµäÖеÄÊÓͼ¡£¾²Ì¬Êý¾Ý×ÖµäÖеÄÊÓͼ·ÖΪÈýÀ࣬ËüÃÇ·Ö±ðÓÉÈý¸öǰ׺¹»³É£ºuser_*¡¢ all_*¡¢ dba_*¡£
user_*¸ÃÊÓͼ´æ´¢Á˹ØÓÚµ±Ç°Óû§ËùÓµÓеĶÔÏóµÄÐÅÏ¢¡££¨¼´ËùÓÐÔÚ¸ÃÓû§Ä£Ê½ÏµĶÔÏó£©
all_*¸ÃÊÔͼ´æ´¢Á˵±Ç°Óû§Äܹ»·ÃÎʵĶÔÏóµÄÐÅÏ¢¡££¨Óëuser_*Ïà±È£¬all_* ²¢²»ÐèÒªÓµÓиöÔÏó£¬Ö»ÐèÒª¾ßÓзÃÎʸöÔÏóµÄȨÏÞ¼´¿É£©¡£
dba_*¸ÃÊÓͼ´æ´¢ÁËÊý¾Ý¿âÖÐËùÓжÔÏóµÄÐÅÏ¢¡££¨Ç°ÌáÊǵ±Ç°Óû§¾ßÓзÃÎÊÕâЩÊý¾Ý¿âµÄȨÏÞ£¬Ò»°ãÀ´Ëµ±ØÐë¾ßÓйÜÀíԱȨÏÞ£©
´ÓÉÏÃæµÄÃèÊö¿ÉÒÔ¿´³ö£¬ÈýÕßÖ®¼ä´æ´¢µÄÊý¾Ý¿Ï¶¨»áÓÐÖصþ£¬ÆäʵËüÃdzýÁË·ÃÎÊ·¶Î§µÄ²»Í¬ÒÔÍ⣨ÒòΪȨÏÞ²»Ò»Ñù£¬ËùÒÔ·ÃÎʶÔÏóµÄ·¶Î§²»Ò»Ñù£©£¬ÆäËû¾ù¾ßÓÐÒ»ÖÂÐÔ¡£¾ßÌåÀ´Ëµ£¬ÓÉÓÚÊý¾Ý×ÖµäÊÓͼÊÇÓÉSYS£¨ÏµÍ³Óû§£©ËùÓµÓеģ¬ËùÒÔÔÚÈ´Ê¡Çé¿öÏ£¬Ö»ÓÐSYSºÍÓµÓÐDBAϵͳȨÏÞµÄÓû§¿ÉÒÔ¿´µ½ËùÓеÄÊÓͼ¡£Ã»ÓÐDBAȨÏÞµÄÓû§Ö»ÄÜ¿´µ½user_*ºÍall_*ÊÓ¡£Èç¹ûûÓб»ÊÚÓèÏà¹ØµÄSELECTȨÏ޵Ļ°£¬ËûÃÇÊDz»ÄÜ¿´µ½ dba_*ÊÓͼµÄ¡£
ÓÉÓÚÈýÕß¾ßÓÐÏàËÆÐÔ£¬ÏÂÃæÒÔuser_ΪÀý½éÉܼ¸¸ö³£Óõľ²Ì¬ÊÓͼ£ºuser_usersÊÓͼ¡£Ö÷ÒªÃèÊöµ±Ç°Óû§µÄÐÅÏ¢£¬Ö÷Òª°üÀ¨µ±Ç°Óû§Ãû¡¢ÕÊ»§id¡¢ÕÊ»§×´Ì¬¡¢±í¿Õ¼äÃû¡¢´´½¨Ê±¼äµÈ¡£ÀýÈçÖ´ÐÐÏÂÁÐÃüÁî¼´¿É·µ»ØÕâЩÐÅÏ¢¡£
¡¡¡¡select * from user_users
¡¡¡¡
user_tablesÊÓͼ£¬Ö÷ÒªÃèÊöµ±Ç°Óû§ÓµÓеÄËùÓбíµÄÐÅÏ¢£¬Ö÷Òª°üÀ¨±íÃû¡¢±í¿Õ¼äÃû¡¢´ØÃûµÈ¡£Í¨¹ý´ËÊÓͼ¿ÉÒÔÇå³þÁ˽⵱ǰÓû§¿ÉÒÔ²Ù×÷µÄ±íÓÐÄÄЩ¡£Ö´ÐÐÃüÁîΪ£ºselect * from user_tables
user_objectsÊÓͼ£¬Ö÷ÒªÃèÊöµ±Ç°Óû§ÓµÓеÄËùÓжÔÏóµÄÐÅÏ¢£¬¶ÔÏó°üÀ¨±í¡¢ÊÓͼ¡¢´æ´¢¹ý³Ì¡¢´¥·¢Æ÷¡¢°ü¡¢Ë÷Òý¡¢ÐòÁеȡ£¸ÃÊÓͼ±Èuser_tablesÊÓͼ¸ü¼ÓÈ«Ãæ¡£ÀýÈç, ÐèÒª»ñÈ¡Ò»¸öÃûΪ¡°package1¡±µÄ¶ÔÏóÀàÐͺÍÆä״̬µÄÐÅÏ¢£¬¿ÉÒÔÖ´ÐÐÏÂÃæÃüÁ
¡¡¡¡
¡¡¡¡select object_type,status
¡¡¡¡from user_objects
¡¡¡¡where object_name=upper(¡®package1¡¯);
¡¡¡¡
ÕâÀïÐè×¢ÒâupperµÄʹÓã¬Êý¾Ý×ÖµäÀïµÄËùÓжÔÏó¾ùΪ´óдÐÎʽ£¬¶øPL/SQLÀï²»ÊÇ´óСдÃô¸ÐµÄ£¬ËùÒÔÔÚʵ¼Ê²Ù×÷ÖÐÒ»¶¨Òª×¢Òâ´óСдƥÅä¡£
user_tab_privsÊÓͼ,¸ÃÊÓͼÖ÷ÒªÊÇ´æ´¢µ±Ç°Óû§Ï¶ÔËùÓбíµÄȨÏÞÐÅÏ¢¡£±ÈÈ磬ΪÁËÁ˽⵱ǰÓû§¶Ôtable1µÄȨÏÞÐÅÏ¢£¬¿ÉÒÔÖ´ÐÐÈçÏÂÃüÁ
¡¡¡¡
¡¡¡¡select * from user_tab_privs where table_name=upper('table1')
¡¡¡¡
Á˽âÁ˵±Ç°Óû§¶Ô¸Ã±íµÄȨÏÞÖ®ºó¾Í¿ÉÒÔÇå³þµÄÖªµÀ£¬ÄÄЩ²Ù×÷¿ÉÒÔÖ´ÐУ¬ÄÄЩ²Ù×÷²»ÄÜÖ´ÐС£Ç°ÃæµÄÊÓͼ¾ùΪuser_¿ªÍ·µÄ£¬Æäʵall_¿ªÍ·µÄÒ²ÍêÈ«ÊÇÒ»ÑùµÄ£¬Ö»ÊÇÁгöÀ´µÄÐÅÏ¢Êǵ±Ç°Óû§¿ÉÒÔ·ÃÎʵĶÔÏó¶ø²»Êǵ±Ç°Óû§ÓµÓеĶÔÏ󡣶ÔÓÚdba_¿ªÍ·µÄÐèÒª¹ÜÀíԱȨÏÞ£¬ÆäËûÓ÷¨Ò²ÍêÈ«Ò»Ñù£¬ÕâÀï¾Í²»ÔÙ׸ÊöÁË¡£
flycocoon ÓÚ 2006-12-09 09:29:08·¢±í:
2£® ¶¯Ì¬Êý¾Ý×Öµä
Oracle°üº¬ÁËһЩDZÔÚµÄÓÉϵͳ¹ÜÀíÔ±ÈçSYSά»¤µÄ±íºÍÊÓͼ£¬ÓÉÓÚµ±Êý¾Ý¿âÔËÐеÄʱºòËüÃǻ᲻¶Ï½øÐиüУ¬ËùÒÔ³ÆËüÃÇΪ¶¯Ì¬Êý¾Ý×ֵ䣨»òÕßÊǶ¯Ì¬ÐÔÄÜÊÓͼ£©¡£ÕâЩÊÓͼÌṩÁ˹ØÓÚÄÚ´æºÍ´ÅÅ̵ÄÔËÐÐÇé¿ö£¬ËùÒÔÎÒÃÇÖ»ÄܶÔÆä½øÐÐÖ»¶Á·ÃÎʶø²»ÄÜÐÞ¸ÄËüÃÇ¡£
OracleÖÐÕâЩ¶¯Ì¬ÐÔÄÜÊÓͼ¶¼ÊÇÒÔv$¿ªÍ·µÄÊÓͼ£¬±ÈÈçv$access¡£ÏÂÃæ¾Í¼¸¸öÖ÷ÒªµÄ¶¯Ì¬ÐÔÄÜÊÓͼ½øÐнéÉÜ¡£
v$access,¸ÃÊÓͼÏÔʾÊý¾Ý¿âÖÐËø¶¨µÄÊý¾Ý¿â¶ÔÏóÒÔ¼°·ÃÎÊÕâЩ¶ÔÏóµÄ»á»°¶ÔÏó£¨session¶ÔÏ󣩡£
ÔËÐÐÈçÏÂÃüÁ
¡¡¡¡
¡¡¡¡select * from v$access
¡¡
½á¹ûÈçÏ£º£¨Òò¼Ç¼½Ï¶à£¬¹ÊÕâÀïÖ»ÊǽÚÑ¡Á˲¿·Ö¼Ç¼£©
¡¡
¡¡¡¡SID¡¡¡¡OWNER¡¡¡¡ OBJECT¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ TYPE
¡¡¡¡27¡¡¡¡ DKH¡¡¡¡¡¡ V$ACCESS¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ CURSOR
¡¡¡¡27¡¡¡¡¡¡PUBLIC¡¡ V$ACCESS¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ SYNONYM
¡¡¡¡27¡¡¡¡¡¡SYS¡¡¡¡¡¡DBMS_APPLICATION_INFO¡¡¡¡PACKAGE
¡¡¡¡27¡¡¡¡¡¡SYS¡¡¡¡¡¡GV$ACCESS¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡VIEW
¡¡
v$session,¸ÃÊÓͼÁгöµ±Ç°»á»°µÄÏêϸÐÅÏ¢¡£ÓÉÓÚ¸ÃÊÓͼ×ֶν϶࣬ÕâÀï¾Í²»ÁÐÏêϸ×ֶΣ¬ÎªÁ˽âÏêϸÐÅÏ¢£¬¿ÉÒÔÖ±½ÓÔÚsql*plusÃüÁîÐÐϼüÈ룺desc v$session¼´¿É¡£
v$active_instance,¸ÃÊÓͼÖ÷ÒªÃèÊöµ±Ç°Êý¾Ý¿âϵĻµÄʵÀýµÄÐÅÏ¢¡£ÒÀÈ»¿ÉÒÔʹÓÃselectÓï¾äÀ´¹Û²ì¸ÃÐÅÏ¢¡£
v$context,¸ÃÊÓͼÁгöµ±Ç°»á»°µÄÊôÐÔÐÅÏ¢¡£±ÈÈçÃüÃû¿Õ¼ä¡¢ÊôÐÔÖµµÈ¡£
3£®Ð¡½á
ÒÔÉÏÊÇOracleµÄÊý¾Ý×ֵ䷽ÃæµÄ»ù±¾ÄÚÈÝ£¬»¹ÓкܶàÓÐÓÃÊÓͼÒòΪƪ·ùÔÒòÕâÀï²»ÄÜÒ»Ò»½²½â£¬Ï£Íû´ó¼ÒÔÚƽʱʹÓÃÖжàÁôÐÄ¡£×ÜÖ®£¬ÔËÓúÃÊý¾Ý×ֵ似Êõ£¬¿ÉÒÔÈÃÊý¾Ý¿â¿ª·¢ÈËÔ±Äܹ»¸üºÃµÄÁ˽âÊý¾Ý¿âµÄȫò£¬ÕâÑù¶ÔÓÚÊý¾Ý¿âÓÅ»¯¡¢¹ÜÀíµÈÓм«´óµÄ°ïÖú¡£