목차
1. DB 패스워드 파일
1-1 관리자 접속을 위한 패스워드 파일 생성
2. Table 관리
2-1 테이블 move와 인덱스 rebuild
1. DB 패스워드 파일
1-1 관리자 접속을 위한 패스워드 파일 생성
관리자는 네트워크로 접속 후 오라클을 작동시킬 수 있어야하므로 일반 계정들과 달리 오라클 밖에 패스워드 파일이 존재한다.
환경
SID : DB19
네트워크 접속을 위해 sys(관리자) 패스워드를 지정한다.
$ orapwd file=$ORACLE_HOME/dbs/orapwDB19 password=zaqxsw123 force=y format=12
- file = [패스워드파일]
- password = [사용할 패스워드]
- force =[y/n] : y 설정 시 패스워드 파일이 있을 경우 강제 생성한다.
- format = [호환버전] : 12이하로 지정하면 패스워드에 특수문자가 불필요하다.
- entries = [인원수] : sysdba 권한을 할당해줄 수 있는 인원 수를 설정한다.
2. Table 관리
2-1 테이블 move와 인덱스 rebuild
테이블에 대해 인서트 작업 이후 롤백 작업 수행 시 할당받은 공간만이 그대로 남아있어 용량 낭비가 일어난다. 또한 sql문 실행 시 빈 공간도 모두 탐색하여 리소스가 낭비되므로 테이블스페이스를 재구성하여 빈 공간을 제거하는 작업을 진행한다.
테이블은 move, 인덱스는 rebuild를 이용하지만 용어의 차이일 뿐 작업은 완전히 동일하다.
● 사용 명령어
SQL> ALTER TABLE <table명> MOVE [TABLESPACE <tablespace명>];
- 테이블을 지정한 테이블스페이스로 이동한다.
- 테이블스페이스를 지정하지 않으면 현재 저장된 테이블스페이스에 재구성한다.
SQL> ALTER INDEX <index명> REBUILD [TABLESPACE <tablespace명>];
- 인덱스를 지정한 테이블스페이스로 이동한다.
- 테이블스페이스를 지정하지 않으면 현재 저장된 테이블스페이스에 재구성한다.
SQL> SELECT D.TN, ROUND(TOTAL/1000000) "TOTAL(MB)",
2 ROUND(FREE/1000000) "FREE(MB)",
3 TO_CHAR(ROUND(FREE/TOTAL*100,1),'99.9')||'%' RATE
4 FROM (SELECT TABLESPACE_NAME TN, SUM(BYTES) TOTAL FROM DBA_DATA_FILES
5 GROUP BY TABLESPACE_NAME) D,
6 (SELECT TABLESPACE_NAME TN, SUM(BYTES) FREE FROM DBA_FREE_SPACE
7 GROUP BY TABLESPACE_NAME) F
8 WHERE D.TN=F.TN;
- 각 테이블스페이스에 남아있는 공간을 MB단위와 백분율로 검색한다.
● 실습
이전 수업에서 생성한 school 테이블을 이용해 다음과 같이 실습한다.
사전 준비: usr테이블스페이스, st유저 생성
create tablespace usr
datafile
'/app/ora19c/oradata/disk1/usr01.dbf' SIZE 30M,
'/app/ora19c/oradata/disk2/usr02.dbf' SIZE 30M;
CREATE USER st
IDENTIFIED BY st
DEFAULT TABLESPACE usr
TEMPORARY TABLESPACE tmp
QUOTA UNLIMITED ON usr
QUOTA 2M ON indx;
GRANT connect, resource TO st

- 테이블의 chaining row 수를 확인한다. 이 수가 크다면 무브를 고려한다.
* chaining row : 블록보다 크기가 큰 행이 들어올 시 데이터를 쪼개 넣는다.
- 각 테이블이 저장된 테이블스페이스를 확인한다.
- 각 테이블스페이스에서 사용 가능한 공간을 확인한다.

- student 테이블을 indx 테이블스페이스로 이동시킨다.

- student 테이블의 인덱스 상태를 확인한다. 테이블 구성 시 제약 조건이 있을 경우 해당 인덱스는 자동 생성된다.
- 테이블의 위치가 바뀌었으므로 기존 인덱스의 rowID가 모두 쓰레기값이 되어버려 UNUSABLE 상태가 된다.
- 인덱스를 원래 테이블 스페이스에 재구성한다.
'일일 정리' 카테고리의 다른 글
| 서버 보안 설정 - Arpwatch, 네트워크 - 다중 IP 설정, 서버 보안 설정 (1) | 2025.04.25 |
|---|---|
| Table 관리 (0) | 2025.04.24 |
| 권한과 Role, 패스워드 보안 및 리소스 관리, Profile 관리 (0) | 2025.04.22 |
| 오라클 유저 관리, 유저 생성과 관리 실습, 권한 관리, 롤 관리 (1) | 2025.04.22 |
| 오라클 자동 실행, Tablespace와 data file (0) | 2025.04.19 |