현재 접속을 하려는 오라클 DB서버에는
A스키마 아래 테이블1, 테이블2 ....
B스키마 아래 테이블1, 테이블 2....
와 같이 30여개의 스키마와 각 스키마 마다의 수십에서 백여개씩의 테이블이 붙어있는 가운데...
각 스키마에 속해진 테이블에 대해 컬럼속성을 보고자 하는데...
현재 갖고 있는 계정은 A스키마이하의 테이블들에 대해서만 테이블컬럼정보를 갖고 올수 있습니다.
(select * from cols 라는 걸로요....)
일단은 권한이 없어서 그런거 같긴하지만...
만약 DBA권한의 계정이나 아니면 현재 갖고 있는 계정이 좀더 높은 권한을 갖게 된다고 할때
어떤식으로 조회를 해야 현재 A스키마에 대한 것만 보던 것을
B스키마 이하의 테이블들에 대해 테이블 갯수, 각 테이블의 컬럼정보, 테이블 정보등을 볼수 있을 까요?
또한 현재 접속한 DB명은 어떻게 알수 있으며,
현재 선택한 스키마는 어떻게 확인할 수 있으며
현재 접속한 DB의 총 용량은 어떻게 확인할 수 있나요?
웹에 좀 뒤져봤는데... 딱 부러지게 나온것을 찾지못해 답답했습니다.
시원한 답변을 좀 주셨으면 좋겠습니다.
ÆÛ½º³Î¿À¶óŬ ±ò¾Æµµ tablespace ºÎÅÍ ÀÌ·±Àú·± Á¤º¸µéÀÌ ´Ù ¿Ã¶ó¿ÀÁö ½Í½À´Ï´Ù¸¸...
Å×À̺í Á¤º¸´Â all_tables, all_tab_comments,
Ä÷³Á¤º¸´Â all_constraints, all_cons_columns, all_col_comments
Àú°É À̸®Àú¸® join, outer joinÀ» °É¾î¼ ÇÊ¿äÇÑ Á¤º¸µéÀ» ÃßÃâÇÕ´Ï´Ù¸¸...
Á¤¸» ¹ö¶óÀ̾îƼÇÑ Á¤º¸µéÀÌ Æ¢¾î³ª¿ÀÁÒ...
Âü°í·Î, °³¹ßÀÚµéÀÌ Æí¾Ö(?)ÇÏ´Â ¿À¶óŬ¿ë SQLÅøÀÎ Åäµå(toad)µµ º¸¿©ÁÖ´Â Á¤º¸µµ ¿À¶óŬ µñ¼Å³Ê¸®¸¦ µÚÁ®¼ ³ª¿À´Â°ÍµéÀÌÁÒ
ÀϹÝÀ¯Àú´Â Àڱ⠼ÒÀ¯ÀÇ Å×ÀÌºí¿¡ ´ëÇÑ ¸ðµç Á¤º¸¸¦ º¼¼öÀÖ½À´Ï´Ù.
(ÀϺΠŸÀ¯Àú°Íµµ ±ÇÇѸ¸ ºÎ¿©¹Þ´Â´Ù¸é °¡´ÉÇϱ¸¿ä)
¿À¶óŬÀÌ´ø MS-SQLÀÌ´ø, ÀÚ±â ÀÚüµµ ¿Ïº®ÇÑ RDBMS·Î ±¸¼ºµÇ¾îÁ®ÀÖ°í(Å×À̺í,ºä,ÆÄƼ¼Å´×µî ´Ù¾çÇÑ ¹æ¹ýÀ¸·Î)
ÀÌ·¯ÇÑ ÀÚ½ÅÀÇ Á¤º¸¸¦ ¿À¶óŬ¿¡¼´Â µñ¼Å³Ê¸®¶ó°í Çϸç, À̰͸¸ Àß ¾Ë°íÀÖ´Ù¸é ¿øÇÏ´Â Á¤º¸¸¦ »Ì¾Æ³¾¼öÀÖÁÒ..
½ÉÁö¾î ÇÁ·Î½ÃÁ®,FUNCTION¿Í °°Àº PL-SQL¼Ò½ºµµ º¼¼öÀÖ½À´Ï´Ù.
¹°·Ð Å×À̺í Á¤º¸,Ä÷³Á¤º¸,¿ë·®(ÀÌ°Ç Á» °è»êÇؾߵÇÁö¸¸)µîµî...
ALL_ ~ ½ÃÀÛÇϴ°͵é
DBA_~~~·Î ½ÃÀÛÇϴ°͵é
V$~~~·Î ½ÃÀÛÇϴ°͵é
µîµî ¸¹ÀÌÀÖ½À´Ï´Ù. ^^
http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/index.htm
¿À¶óŬ 10g R2 µñ¼Å³Ê¸®ÀÔ´Ï´Ù.
(¹¹ ÀϺΠµñ¼Å³Ê¸®°¡ ¾Æ´Ñ°Íµµ ÀÖÁö¸¸, Àû´çÈ÷ ÇÊÅ͸µÇϽøéµÉµí...)
±×¸®°í, ÀÌ·±°Íµé¿¡ ´ëÇÑ ÀÌÇظ¦ ÇϽǷÁ¸é ¿À¶óŬÀ» Á»´õ °øºÎÇغ¸½Ã´Â°Ô ÁÁÀ»µíÇϳ׿ä...
¿À¶óŬÀº ±âº» °³³äÀÌ »ó´çÈ÷ Áß¿äÇÕ´Ï´Ù.
¿À¶óŬÀÇ ±âº» °³³ä¿¡ ´ëÇÑ ÀÌÇصµ¾øÀÌ À¥¿¡¼ ³ª¿Â ÆÁÀ§ÁÖ·Î ÇÑ´Ù¸é ÇÑ°è°¡ ¸íÈ®Çϴϱî¿ä
sql> grant dba to user;
sql> alter user dba default role;
- ÇöÀç Á¢¼ÓÇÑ DB¸í
sql> show parameter db_name
¶Ç´Â instance name
sql> select instance_name from v$instance;
- ÇöÀç ¼±ÅÃÇÑ ½ºÅ°¸¶´Â ¾î¶»°Ô È®ÀÎ
sql> show user
- ÇöÀç Á¢¼ÓÇÑ DBÀÇ ÃÑ ¿ë·®
sql> select sum(bytes)/1024/1024 as MB from dba_data_files;