일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 태국맛집
- 미금냉삼
- 영등포구청역맛집
- 중복
- 문래삼계탕
- 일로집
- 눈썹문신제거#붉은잔흔#잠실새내눈썹문신제거#붉은잔흔제거#눈썹문신
- 냉삼맛집
- 팟타이
- 미금
- 냉삼
- 삼계탕
- 태국현지느낌식당
- 쌀국수
- 미금맛집
- 반계탕
- 영등포삼계탕
- 분당맛집
- 구리맛집
- 진타이
- 팟타이맛집
- 오이삼계탕
- 쌀국수맛집
- 냉동삼겹살맛집
- 초복
- 정자맛집
- 인삼주
- 말복
- 냉동삼겹살
- 진타이식당
- Today
- Total
부리부리
ORACLE 8장 TABLESPACE AND DATAFILE 본문
--8장p1
DATAFILES은 TABLESPACE안에 있음
실제로는 DATAFILE안에는 더작게 DATA가있음
그 DATA가 모여 TABLE과 OBJECT로 이루어짐
이것이 TABLESPACE안에 있는거
--P2
SYSTEM TABLESPACE
CONTAINS THE SYSTEM UNDO SEGMENT란 - 자체적으로 UNDOTBS를 내장되어있음
(ROLLBACK 하기전 저장소/UNDOTBS01.DBF)
--P3
USERDATA01.DBF는 ORADATA라는 TABLESPCE 안에 있는거
--P4
기본 TABLESPACE를 만들면 안에는 8K단위로 만들어짐
LOCALLY MANAGED TABLESPACE -주로 사용함
직접 BLOCK으로 와서 HEADER를 읽어서 저장함
그러므로 속도가 빠름
DICTIONARY-MANAGED TABLESPACE -SYSTEM이 사용함(잘안하는거..)
BLOCK에는 HEADER가 있음
HEADER에는 앞뒤에 OBJECT ID나 자기자신에 저장공간 용량 정보등을 가지고있음
HEADER 가 2KB 나머지 6KB는 데이터 저장공간임 (쉽게 보면,,,)
저장공간을 DICTIONARY에 저장함 / 근데 사용자가 저장하려고 하면 DICTIONARY를 통해서
BLOCK으로 저장함 -> DICTIONARY에서 BLOCK의 저장공간 수정
--P5
EXTENT MANAGEMENT LOCAL -EXTENT는 LOCAL이 관리
UNIFORM SIZE 128K -500M 공간이 있는상태에서 공간이 꽉 차면 똑같이 128KB씩 늘림
--P7
UNDO DATABLESPACE를 직접 만들수있음
UNDO SEGMENT에 저장
UNDO SPACE를 만들어놓고 TABLE은 만들수없다 (사용은 무조건 취소의 저장기능만)
반드시 복구해줘야하는 TABLESPACCE중하나
--P8
TEMPORARY TABLESPACE 는 사용자가 정렬할때 그 공간을 만들어줄때
PGA가 우선정렬하지만 공간이 작음/그러므로 정렬을 위해 TEMPORARY 로 간다
만약에 없으면 (TEMPORARAY DISK망가졌을때) SYSTEM TABLESPACE로 감
영구적인 데이터는 저장할수없음 /왜냐면 껐다 키면 사라지는 공간이기때문에
LOCAL이 관리함
--P12
새로운 DEFAULT값을 지정해주기 전까지 삭제할수없다
TEMP1이 DEFAULT면 1은 삭제못함 2까지 만들고 DEFAULT지정해주고 삭제가능
OFFLINE시킬수없다 중요하니까 !
한번만들어진 TEMPORARY TABLESPACE는 삭제하기전까진 TEMPORARY TABLESPACE임(다른걸로 바꿀수 없다)
--P14
SYSTEM TABLESPACE는 OFFILNE할수없음 (ORACLE을 OFFLINE할수없음)
UNDO SEGMENT도 OFFLINE할수없음 (취소기능사용못함)
--P20
일반 TABLESPACE를 위치를 바꿀때
LOG의 위치를 바꿀때도 동일한 명령어를 사용함
--P21
마운트상태에서
SYSTEM TABLESPACE를 OPEN하지않고 옮기고 싶을때
--P23
DB_CREATE_FILE_DEST 위치
db_create_file_dest = spfile
--P25
V$를 많이 사용함
★실습★
SYS@TestDB> SELECT TABLESPACE_NAME,STATUS,CONTENTS,
2 EXTENT_MANAGEMENT,SEGMENT_SPACE_MANAGEMENT
3 FROM DBA_TABLESPACES;
TABLESPACE_NAME STATUS CONTENTS EXTENT_MAN SEGMEN
------------------------------ --------- --------- ---------- ------
SYSTEM ONLINE PERMANENT LOCAL MANUAL-DICTIONARY
SYSAUX ONLINE PERMANENT LOCAL AUTO
UNDOTBS1 ONLINE UNDO LOCAL MANUAL
TEMP ONLINE TEMPORARY LOCAL MANUAL
USERS ONLINE PERMANENT LOCAL AUTO
EXAMPLE ONLINE PERMANENT LOCAL AUTO
6 개의 행이 선택되었습니다.
PERMANENT - 영구적
SYS@TestDB>SAVE DT.SQL
-위치정보와 사이즈정보를 볼수있음
SYS@TestDB> SELECT TABLESPACE_NAME,BYTES,FILE_NAME FROM DBA_DATA_FILES;
TABLESPACE_NAME BYTES FILE_NAME
---------------- ---------- -----------------------------
USERS 11796480 C:\APP\ITWILL\ORADATA\TESTDB\
USERS01.DBF
UNDOTBS1 99614720 C:\APP\ITWILL\ORADATA\TESTDB\
UNDOTBS01.DBF
SYSAUX 639631360 C:\APP\ITWILL\ORADATA\TESTDB\
SYSAUX01.DBF
SYSTEM 723517440 C:\APP\ITWILL\ORADATA\TESTDB\
SYSTEM01.DBF
TABLESPACE_NAME BYTES FILE_NAME
-------------------------- ---------- -----------------------------
EXAMPLE 104857600 C:\APP\ITWILL\ORADATA\TESTDB\
EXAMPLE01.DBF
-TEMP
SYS@TestDB> SELECT TABLESPACE_NAME , BYTES,FILE_NAME FROM DBA_TEMP_FILES;
TABLESPACE_NAME BYTES FILE_NAME
---------------- ---------- -----------------------------
TEMP 30408704 C:\APP\ITWILL\ORADATA\TESTDB\
TEMP01.DBF
SYS@TestDB> CREATE TABLESPACE INSA
2 DATAFILE 'C:\APP\ITWILL\ORADATA\TESTDB\INSA01.DBF' SIZE 10M
3 SEGMENT SPACE MANAGEMENT AUTO;
테이블스페이스가 생성되었습니다.
SYS@TestDB> @DT
TABLESPACE_NAME STATUS CONTENTS EXTENT_MAN SEGMEN
---------------- --------- --------- ---------- ------
SYSTEM ONLINE PERMANENT LOCAL MANUAL
SYSAUX ONLINE PERMANENT LOCAL AUTO
UNDOTBS1 ONLINE UNDO LOCAL MANUAL
TEMP ONLINE TEMPORARY LOCAL MANUAL
USERS ONLINE PERMANENT LOCAL AUTO
EXAMPLE ONLINE PERMANENT LOCAL AUTO
INSA ONLINE PERMANENT LOCAL AUTO
7 개의 행이 선택되었습니다.
ALTER TABLESPACE INSA OFFLINE; 후
INSA01.DBF파일을 윈도우에서 ADISK\DISK1으로 옮기고
SYS@TestDB> ALTER TABLESPACE INSA RENAME
2 DATAFILE 'C:\APP\ITWILL\ORADATA\TESTDB\INSA01.DBF'
3 TO
4 'C:\ADISK\DISK1\INSA01.DBF';
SYS@TestDB> ALTER TABLESPACE USERS RENAME
2 DATAFILE 'C:\app\itwill\oradata\TestDB\USERS01.DBF'
3 TO 'C:\aDisk\disk2\USERS01.DBF';
-SYSTEM01을 옮길땐 SYSTEM SHUTDOWN 하고 옮겨야함
SYS@TestDB>STARTUP MOUNT
SYS@TestDB> ALTER DATABASE RENAME
2 FILE 'C:\app\itwill\oradata\TestDB\SYSTEM01.DBF'
3 TO 'C:\aDisk\disk3\SYSTEM01.DBF';
데이타베이스가 변경되었습니다.
-TABLESPACE 삭제
SYS@TestDB> DROP TABLESPACE INSA
2 INCLUDING CONTENTS AND DATAFILES CASCADE CONSTRAINTS;
테이블스페이스가 삭제되었습니다.
->AND DATAFILES CASCADE CONSTRAINTS;
실제 WINDOWS경로에 있는 파일도 사라짐
'ORACLE' 카테고리의 다른 글
INDEX 단편화 (0) | 2019.01.28 |
---|---|
ORACLE 6장 CONTROL FILE (0) | 2019.01.24 |
ORACLE 7장 REDO LOGFILE (0) | 2019.01.24 |
ORACLE 구조 (0) | 2019.01.23 |
ORACLE PACKAGE (PROCEDURE 묶음) (0) | 2019.01.22 |