기술 정보
home
채널 소개
home

데이터파일 파일명의 수정 방법

문서 유형
기술 정보
분야
관리/환경설정
키워드
datafile
변경
파일 수정
적용 제품 버전
6FS07
7FS02

개요

데이터파일의 파일명 수정 혹은 경로 변경을 위해 수행할 수 있는 3가지 방법에 대해 설명합니다.
control 파일을 수정하지 않는 방법
control 파일 수정 및 재생성
테이블스페이스 offline
각 방법은 적용 환경과 목적에 따라 선택적으로 사용할 수 있습니다.

방법

1. Control 파일을 수정하지 않는 방법

1. Tibero 종료
tbdown immediate
SQL
복사
2. 데이터파일 복사
기존 데이터파일을 원하는 이름이나 경로로 복사합니다.
$ cp /home/tibero/oldfile.dtf /home/tibero/newfile.dtf
SQL
복사
3. mount 모드
tbboot mount
SQL
복사
4. SQL 접속
SYS 계정으로 접속합니다.
tbsql sys/tibero
SQL
복사
5. 데이터파일 이름 변경
ALTER DATABASE RENAME FILE '/home/tibero/oldfile1.dtf' TO '/home/tibero/newfile1.dtf'; ALTER DATABASE RENAME FILE '/home/tibero/oldfile2.dtf' TO '/home/tibero/newfile2.dtf';
SQL
복사
6. Tibero 종료
tbdown immediate
SQL
복사
7. Tibero 기동
tbboot
SQL
복사

2. control 파일 수정 및 재생성

1. control 파일 생성문 백업 (normal 모드)
tbsql sys/tibero SQL> ALTER DATABASE BACKUP CONTROLFILE TO TRACE AS '/data/ctl.sql' REUSE NORESETLOGS;
SQL
복사
2. Tibero 종료
tbdown immediate
SQL
복사
3. 데이터파일 복사
기존 데이터파일을 원하는 이름이나 경로로 복사합니다.
$ cp /home/tibero/oldfile.dtf /home/tibero/newfile.dtf
SQL
복사
4. control 파일 생성문 수정
1번에서 백업한 control 파일 생성문 내용 중 해당 파일명을 수정합니다.
... NORESETLOGS DATAFILE '/home/tibero/system001.dtf', ... '/home/tibero/oldfile.dtf','/home/tibero/newfile.dtf ' ...
SQL
복사
5. nomount 모드
tbboot nomount
SQL
복사
6. SQL 접속
tbsql sys/tibero
SQL
복사
7. control 파일 재생성
SQL> @/data/ctl.sql
SQL
복사
8. Tibero 종료
tbdown
SQL
복사
9. mount 모드
tbboot mount
SQL
복사
10. 복구 수행
SQL> alter database recover automatic;
SQL
복사
Tibero 종료
tbdown
SQL
복사
12. Tibero 기동
tbboot
SQL
복사
13. TEMPFILE 재생성
control 파일 생성문 중 temp 생성문 이용하여 tempfile 재생성합니다.
... ---- Adding Tempfiles is required in OPEN mode. -- ALTER TABLESPACE TEMP ADD TEMPFILE '/home/tibero/temp001.dtf' -- SIZE 100M REUSE AUTOEXTEND ON NEXT 16M MAXSIZE 3G; ... SQL > ALTER TABLESPACE TEMP ADD TEMPFILE '/home/tibero/temp001.dtf' SIZE 100M REUSE AUTOEXTEND ON NEXT 16M MAXSIZE 3G;
SQL
복사

테이블스페이스 offline

1. 테이블스페이스 Offline 처리
해당 데이터파일이 속한 테이블스페이스를 offline 상태로 전환합니다.
SQL> alter tablespace tablespace_name offline;
SQL
복사
2. 데이터파일 복사
기존 데이터파일을 원하는 이름이나 경로로 복사합니다.
$ cp /home/tibero/oldfile.dtf /home/tibero/newfile.dtf
SQL
복사
3. 데이터파일 변경
SQL> ALTER DATABASE RENAME FILE '/home/tibero/oldfile.dtf' TO '/home/tibero/newfile.dtf';
SQL
복사
4. 테이블스페이스 online
SQL> alter tablespace tablespace_name online;
SQL
복사
참고
3번 방법은 normal 모드에서 데이터베이스를 다운하지 않고도 수행할 수 있다는 장점이 있지만, 해당 테이블스페이스에 접근 중인 트랜잭션이 전혀 없어야만 안전하게 수행 가능합니다. 따라서 실제 운영 환경에서는 수행하기 어렵습니다.
또한, 테이블스페이스 offline이 정상적으로 되지 않을 경우 데이터파일에 문제가 발생할 수 있기 때문에, 3번보다는 1번 또는 2번 방법을 사용하는 것을 권장합니다.