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
운영게시판
최근게시물
CUBRID Q&A 665 게시물 읽기
No. 665
Q.이관 방법에 대해서 궁금해서 글을 남깁니다.
작성자
민광호
작성일
2007-11-01 11:48
조회수
4,372

1.DB자체를 옯기는 방법

=>다른 서버에 db가 생성되지 않았을때 이관할수가 있나요?

 

2. 구조와 데이터를 이관하는 방법

=>db는 생성후에 스키마와 데이터를 이관할떄 쓸수있는 방법들이 몇가지나 되는건가요?

3. SQL로 속성 및 제약 조건을 변경하고 이관하는 방법

=> SQL문장으로 데이터 타입이나 제약조건을 변경하고 이관할수가 있나요?

      있다면 주의 할점좀 알려주시면 감사하겠습니다.

 

4. 구조만 이관하는 방법

=> 스키만을 이관하는 방법들에 대해서;;^^

 

5. 데이터만 이관하는 방법

=> 데이터만 이관하는 방법~

     같은 테이블을 만들어놓고 이관? 다른 이름의 테이블에도 이관을 할수있는지..

     있다면 어떤 방법들이 있는지 궁금합니다.

 

6. 구조가 생성되어 있을경우 데이터를 추가하는 이관방식

=> 기존의 테이블과 데이터가 있을시에 다른 데이터를 추가할수가 잇는지요.

     있을떄 주의할점과 방법들이 궁금합니다.

 

 

 

PS:언로드&로드나 엑셀화일로 하는 방식이 있는걸로 알고 테스트는 해봣습니다만

     다른 여러가지 각도로 알아보고 싶어서 이렇게 글을 남깁니다.

    

이 글에 대한 댓글이 총 1건 있습니다.

아래의 각 항목에 대해 답변을 하도록 하겠습니다.

 

>1.DB자체를 옯기는 방법

> =>다른 서버에 db가 생성되지 않았을때 이관할수가 있나요?

 

** 질문하시는 내용을 유추하면 1번 서버의 데이터파일을 2번 서버로 옮기는 것에 대한 것이라 생각됩니다. 우선 1번 서버의 경로와 2번 서버의 경로가 같아야되고, DBMS엔진은 2번 서버에도 설치되어 있어야 합니다. 1번 서버의 파일을 2번으로 옮긴 후 databases.txt(ordblist.txt)파일에 hostname을 2번 서버로 변경해 줍니다. 모든 경로가 동일하다면, 같은 OS에서는 정상적으로 운영이 가능합니다. (단, 이기종의 서버의 경우 파일 이전으로만은 불가능합니다.)

 

 

>

>2. 구조와 데이터를 이관하는 방법

> =>db는 생성후에 스키마와 데이터를 이관할떄 쓸수있는 방법들이 몇가지나 되는건가요?

 

** 첫째, 큐브리드에서는 unload/load방법을 지원합니다. 스키마 정보와 데이터 정보를 텍스트 파일로 받아내어 어떤 종류의 서버에도 옮길 수 있는 방법입니다.

둘째, 같은 종류의 OS라면 백업 파일을 이용하여 이관하는 것도 가능합니다. 단, 이관할 서버의 경로는 원래 서버의 경로와 같아야합니다.

셋째, 첫번째 질문하신 경우의 작업과 같이 파일을 통째로 이관하고 경로 및 databases.txt파일을 수정해 주는 것입니다. 백업 파일을 이용하는 것과의 차이는 restore작업이 필요없습니다.

넷째, CUBRID Mangaer의 export, import를 이용하여 데이터를 이전하는 방법입니다. 단순한 데이터 이전은 가능하나 데이터베이스 설계 시 ORDBMS의 특정 기능들을 이용하였다면, 해당 연결고리가 정상적으로 받아지지 않을 수 있으므로 권장하지 않으며, 작업의 속도도 오래 걸리기 때문에 단편적인 데이터 이전작업이 아니라면 사용하지 않는 것이 좋습니다.

 

>3. SQL로 속성 및 제약 조건을 변경하고 이관하는 방법

> => SQL문장으로 데이터 타입이나 제약조건을 변경하고 이관할수가 있나요?

>      있다면 주의 할점좀 알려주시면 감사하겠습니다.

 

** 질문의 내용은 원래 서버와 이전 서버의 스키마 구조를 다르게 하고자 하는 것으로 이해하겠습니다. 위의 질문의 첫번째 답변인 unload/load작업에서 unload한 파일 중 schema파일은 텍스트 형태로 되어 있으며 수정이 가능합니다. 변경 또는 삭제하고자 하는 부분을 수정한 후 새로운 서버에 load작업을 하시면 됩니다. 단, UNIQUE, NOT NULL과 같은 제약 조건을 변경할 시 load데이터와 충돌이 발생할 수 있습니다.(제약조건오류) 따라서 이부분에 대한 주의가 필요합니다.

 

>

>4. 구조만 이관하는 방법

> => 스키만을 이관하는 방법들에 대해서;;^^

 

** 스키마만 이관하는 방법은 간단합니다. 2번 질문의 unload 작업에서 <db_name>_schema(<db_name>.sch) 형태에는 스키마 정보만 들어 있습니다. 이를 이용하면 가능합니다. 참고로 <db_name>_schema 형식은 Unix계열, <db_name>.sch 형식은 윈도우 계열에서의 unload받은 파일들의 표시형태입니다.

 

>

>5. 데이터만 이관하는 방법

> => 데이터만 이관하는 방법~

>     같은 테이블을 만들어놓고 이관? 다른 이름의 테이블에도 이관을 할수있는지..

>     있다면 어떤 방법들이 있는지 궁금합니다.

 

** 데이터만 이관하는 방법도 unload방법을 사용합니다. unload 작업을 수행할 경우 <db_name>_objects 파일도 생성이 될 것입니다. 이는 데이터를 텍스트 형태로 저장해 놓은 파일입니다. 이를 이용하시면 이관이 가능합니다.

 

>

>6. 구조가 생성되어 있을경우 데이터를 추가하는 이관방식

> => 기존의 테이블과 데이터가 있을시에 다른 데이터를 추가할수가 잇는지요.

>     있을떄 주의할점과 방법들이 궁금합니다.

 

** 이미 구조가 생성되어 있을 경우에도 unload에 의해 생성된 <db_name>_objects 파일을 이용하면 됩니다. 해당 파일은 텍스트 형태로 되어 있으므로 확인하고 수정이 가능합니다.

 

unload/load작업의 방법은 아래와 같습니다.(기본 옵션으로 예시합니다. 자세한 옵션은 메뉴얼을 참조하시기 바랍니다.) unloaddb작업은 on/offline 수행이 가능하며, loaddb는 offline수행만 가능합니다.

%unloaddb -v -di -sa <db_name>

%loaddb -u dba -v -c 10000 -vc -sf <db_name>_schema -if <db_name>_indexes -of <db_name>_objects <db_name>

 

++ 추가 질문 사항이 있으시면 Q&A에 다시 질문 주시기 바랍니다.

>

>

>

>PS:언로드&로드나 엑셀화일로 하는 방식이 있는걸로 알고 테스트는 해봣습니다만

>     다른 여러가지 각도로 알아보고 싶어서 이렇게 글을 남깁니다.

>    

 

김범준님이 2007-11-01 13:43에 작성한 댓글입니다. Edit
[Top]
No.
제목
작성자
작성일
조회
669Q.개인용 버젼을 따로 제작하실 생각은 없으신지.. [1]
조성배
2007-11-02
3954
667Q.C#으로 개발중에 있습니다. [2]
한륜희
2007-11-01
4324
666Q.6.5 -&gt; 7.3 갈아타기 좋은 방법. [1]
이형채
2007-11-01
4186
665Q.이관 방법에 대해서 궁금해서 글을 남깁니다. [1]
민광호
2007-11-01
4372
664Q.[질문] SP의 output 처리 [1]
이지현
2007-10-31
4277
663Q.숫자로 시작하는 테이블명 관련 [1]
gilbird
2007-10-31
3841
662Q.큐브리드 매니저 테이블 액세스 오류 [1]
gilbird
2007-10-31
3933
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.027초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다