database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 5684 게시물 읽기
No. 5684
Re: Re: 오라클 파일들 옮기기 명령어
작성자
herrchen
작성일
2001-07-05 14:34
조회수
2,565

구체적인 명령어도 좀 적어 봅니다.

 

[ controll file rename ]

1. database shutdown

SVRMGR> shutdown

2. controll file copy

# copy /old-path/oldfile-name /new-path/newfile-name (os상의 작업)

3. init<SID>.ora file 수정

# vi init<SID>.ora --- controll의 위치를 지정한 파라메타에 새로운 path로 입력

4. database startup

SVRMGR> startup

5. 확인

SVRMGR> select *from v$controllfile;

 

[ Tablespace(datafile) rename ]

1. database startup

SVRMGR> startup

2. datafile offline

SVRMGR> alter tablespace <tablespace_name> offline;

3. datafile copy

# copy /old-path/oldfile-name /new-path/newfile-name (os상의 작업)

4. datafile rename

SVRMGR> alter database <tablespace_name> rename file '/old-path/oldfile-name'

to '/new-path/newfile-name';

5. database open and tablespace online

SVRMGR> alter database open;

SVRMGR> alter tablespace <tablespace_name> online;

6. 확인

SVRMGR> select name, status from v$datafile;

7. unix command에 의한 old datafile 삭제

 

[ system datafile 및 logfile ]

1. database shutdown ( immeidate나 abort로 하면 안됨)

SVRMGR> shutdown

2. unix command에 의한 새위치에 copy

# copy /old-path/oldfile-name /new-path/newfile-name (os상의 작업)

3. mount database

SVRMGR> startup mount

4. rename

SVRMGR> alter database rename file '/old-full-path/old-filename'

to '/new-full-path/new-filename';

5. open database

SVRMGR> alter database open;

6. 확인

SVRMGR> select name, status from v$datafile;

SVRMGR> select * from v$log;

SVRMGR> select * from v$logfile;

7. unix command에 의한 old logfile 삭제

 

아래의 설명과 함께 보시면 그리 어렵지 않을 겁니다.

그럼 이만.

 

>>herrchen 님께서 쓰시길<<

 

::

:: 오라클에 관련된 화일들( software, datafile, logfile, controllfile )은 어디에 있느냐에 그리 그게

:: 영향을 받지 않습니다.

:: 설치시나 생성시에 각각의 위치에 대한 권한이 주어져 있으면 어디던지 상관이 없지요.

:: 통상적으로는 오라클 환경에서 oracle_base로 설정된 위치에 oradata/<SID>라는 디렉토리가 생기고 그

:: 아래에 저장을 합니다.

:: 그리고 따로 데이타를 저장할 디렉토리를 만들어서 저장하기도 하지요.

:: 위의 두가지를 구분하는 이유는 많지만 하나는 관리의 편리성에 의해서이지요.

:: 백업이나 복구 등을 얼마나 편하게 할수 있는냐 뭐 이런 관점에서 나름대로 따로 저장을 해두는 것이

:: 지요.

:: 그리고 또하나는 오라클 데이타베이스의 성능(퍼포먼스)을 고려해서 저장을 하지요.

:: 여러장의 디스크가 있다면 디스크의 I/O(Input/Output)에서 충돌이니 딜레이가 일어나지 않도록 구성

:: 하는 것이지요.

:: 대체적으로 데이타베이스가 운영되면 한꺼번에 사용되는 데이타 화일들이 있습니다.

:: rbs, redolog, 사용해야될 데이타화일 뭐 이런것은 어떤 작업을 하게 되면 동시에 사용이 될수밖에 없

:: 지요. 이런 화일을 동일한 디스크에 넣어두는것보다는 다른 디스크로 분리해두면 당연히 디스크 I/O면

:: 에서 유리하죠.

:: 요즘은 raid를 구성하기에 별로 상관이 없게 되었지만요.

:: 하여간 대체적으로 위의 두가지 이유로 분산하기도 하고 새로운 장소를 지정해서 저장하기도 하는 겁

:: 니다.

::

:: 운영중 디스크의 교체가 있다던지 디렉토리구조를 변경을 원할때가 생길수 있으므로 당연히 위치를 옮

:: 길수도 있지요.

:: 단순히 유닉스 상에서 move한다고 해서 데이타베이스가 알고있는 논리적은 정보가 변경되지는 않습니

:: 다.

:: 옮기실려면 우선 유닉스상에서 카피를 해서 원하는 위치에 복사본을 두고 sql명령문으로 논리적인 정

:: 보를 변경해야됩니다.

:: 그후 변경된것이 확인이 되면 원래 위치의 데이타 화일을 유닉스 명령어로 지웁니다.

:: 그리고 오라클 데이타베이스의 경우 사용중인 화일(데이타화일이 오픈된상태)은 카피해도 사용할수 없

:: 게 됩니다.

:: 반드시 옮기고자 할때는 옮기고자 하는 데이타 화일을 OFFline 상태로 바꾼후 카피하고 sql로 논리적

:: 정보를 변경하고 ONline상태로 만들어 주어야 합니다.

:: 하나하나 이런 작업을 다 해주어야 합니다

:: 좀더 구체적으로 설명하면

:: 1. 오라클 데이타베이스 기동

:: 2. 옮기고자 하는 데이타 화일만 오프라인 설정

:: 3. 오프라인 된 화일을 유닉스상에서 원하는 위치로 카피

:: => 옮길 디렉토리의 ownership은 당연히 원래 오라클의 것과 같아야 합니다.

:: 4. sql 명령어로 논리적 정보변경( 데이타베이스 혹은 테이블스페이스의 rename)

:: 5. 확인

:: 6. 옮긴 데이타화일(테이블 스페이스)을 온라인으로 설정

:: 7. 원래 데이타화일을 유닉스 상에서 삭제

:: 구체적인 명령어는 오라클 관련 서적에서 쉽게 알수 있습니다.

::

:: 좀 귀찮을 것은 시스템 데이타화일의 이동이지요.

:: 방법상에서 좀 차이가 있습니다.

:: 다른 데이타 화일은 데이타베이스가 완전히 기동된 상태에서도 가능하지만 시스템의 경우는 데이타베

:: 이스를 마운트상태까지만 기동해서 작업을 해야합니다.

::

:: 그림이나 소리 등은 별도의 어플리케이션이 있어야만 볼수가 있습니다. 오라클 폼즈나 프로 씨 등등.

:: 뭐 다른 이와 비슷한 어플리케이션이라면 가능하지요.

:: 물론 입력도 당연히 이 어플리케이션을 이용해야만 가능하지요.

:: 그럼 이만.

::

:: >>이은영 님께서 쓰시길<<

::

:: :: 얼마전 서버에 오라클을 깐 사람이 rbs나 콘트롤 화일등을 같은 디렉토리에 넣지 않고 저희 데이터

:: 쌓

:: :: 일곳에 넣어둔적이 있는데요...그런 화일은 통상적으로 어디에 위치하는 것이 좋으며 만일 다른 파

:: 티션

:: :: 으로 옮겨야 한다면 가능한가요? 또 가능하다면 그냥 mv 하는 것이 아니고 다른 설정을 바꾸는 것

:: 이 있

:: :: 는지 궁금합니다.

:: :: 또 저희 오라클 디비에 bmp파일이 저장이 되어 있는데요...그것들을 받아서 볼 수 있는 방법이 있

:: 는지

:: :: 요...

[Top]
No.
제목
작성자
작성일
조회
5685갑자기 count(*) 시간이 많이 걸립니다.
김현
2001-07-05
1077
5687┕>Re: 갑자기 count(*) 시간이 많이 걸립니다.
권혁봉
2001-07-05 15:42:46
1452
5692 ┕>Re: Re: 감사합니다. (내용무)
김현
2001-07-05 17:38:37
1063
5680와우 7.1에서 오라클 9i가 안깔리는 뎁쇼.. 알려주세용
백윤석
2001-07-05
1002
5682┕>Re: 와우 7.1에서 오라클 9i가 안깔리는 뎁쇼.. 알려주세용
류명환
2001-07-05 13:04:42
1370
5678데이터파일삭제후 테이블스페이스삭제하는 방법?
바야바
2001-07-05
1374
5679┕>Re: 데이터파일삭제후 테이블스페이스삭제하는 방법?
sllim
2001-07-05 10:06:21
2147
5677오라클 파일들...
이은영
2001-07-05
1156
5683┕>Re: 오라클 파일들...
herrchen
2001-07-05 13:56:10
1454
5684 ┕>Re: Re: 오라클 파일들 옮기기 명령어
herrchen
2001-07-05 14:34:29
2565
5673foreign key가 두테이블을 참조..
으나
2001-07-04
5511
5674┕>Re: foreign key가 두테이블을 참조..
sllim
2001-07-04 19:59:50
1406
5676 ┕>Re: Re: foreign key가 두테이블을 참조..
으나
2001-07-04 22:08:17
3162
5681  ┕>Re: Re: Re: foreign key가 두테이블을 참조..
sllim
2001-07-05 12:29:05
1534
5686   ┕>Re: Re: Re: Re: foreign key가 두테이블을 참조..
으나
2001-07-05 14:51:41
1606
5672#ORA-7445에러는 왜 생기나요?
maria
2001-07-05
9161
5688┕>Re: #ORA-7445에러는 왜 생기나요?
herrchen
2001-07-05 16:27:03
9435
5714 ┕>Re: Re: #ORA-7445에러는 왜 생기나요?
maria
2001-07-06 15:08:49
3704
5718  ┕>Re: Re: Re: #ORA-7445에러는 왜 생기나요?
herrchen
2001-07-06 17:30:43
3387
5705┕>Re: #ORA-7445에러는 왜 생기나요?
오태석
2001-07-06 13:16:49
2857
5671auto_increment 를 찾아주소서...^^;
elec0325
2001-07-04
1174
5675┕>Re: auto_increment 를 찾아주소서...^^;
sllim
2001-07-04 20:17:22
1740
5689 ┕>Re: Re: auto_increment 를 찾아주소서...^^;
elec0325
2001-07-05 16:30:30
1440
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.021초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다