Background Image

FORUM

?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부


* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.

OS
Window10 64bit, Linux CentOS 7
CUBRID Ver.
CUBRID 10.1 (10.1.2.7694-64632b2)
CUBRID TOOL Ver.
CUBRID Manager 10.2.0.0001  (64bit)
응용 환경(API)
java, spring


* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.

 

에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------
안녕하세요.

테이블만 복사하는 방법 알려주셔서 정말 감사합니다.

수행 절차를 생각해보면 당연히 알았어야 하는것 같은데 알려주셔서 감사해요. ㅠ

 

'unloaddb / loaddb 실행할 때 clob파일을 유지할 수 있는 방법 있을까요?'가 질문입니다.

1. https://www.cubrid.com/tutorial/3794147 이 설명과

2. https://www.cubrid.com/blog/3825207 이 설명을 보고

unloaddb / loaddb를 했습니다.

그런데 '2'의 과정 즉 CLOB 파일의 주소를 가진 데이터를 업데이트하는 것에서 두 가지 어려운점이 있었습니다.

1. CLOB주소 업데이트 수행을 테이블별로 해야 한다는 것

2. CLOB주소 업데이트 수행시 기존 CLOB파일이 복사가 아니라 이동된다는 것

이었습니다.

업데이트를 약 50번 정도 해야 하는데, 사용자가 계속 있습니다.

제 생각에는 기존 CLOB을 복사해두고, 업데이트 수행하고, 기존 CLOB를 복원해야할 것 같은데

혹시 더 나은 방법이 있는지 궁금합니다.

'업데이트 수행'과 '기존 CLOB 복원' 사이에서 운영중인 기존 DB조회 에러가 발생하잖아요.

이 위험을 어떻게 없앨 수 있을지, 50번 정도의 업데이트는 자동 스크립트 같은 것을 직접 만들어서 수행해야하는 것인지 알고 싶습니다.

 

질문이 장황한데 읽어주셔서 감사합니다. 답변 꼭 좀 부탁드릴게요. 공부 열심히 하겠습니다.

 

  • ?
    kisoo 2021.03.12 11:58
    이 답변은 참조만 하세요. 제 개인적인 의견은
    1. unload 수행
    2.unloaddb의 object file에서 LOB 경로 변경 (Linux sed 유틸리티 이용)
    3.기존의 lob directory를 Linux 명령으로 복사
    4. loadbdb 실행
    5. 새로운 db의 LOB data 변경 ($CUBRID_DATABASES/databases.txt)

    예를 들어 demodb를 testdb로 복사하고
    before LOB: /home/kshan/db/CUBRID/demo/lob
    after LOB: /home/kshan/lob1

    이라고 가정하면 Linux 기준의 명령어

    $ csql -u dba -c "create table test1(col1 int, col2 clob)" demodb
    $ csql -u dba -c "insert into test1 values (1, '111'), (2, '222')" demodb
    $ csql -u dba -c "select col1, clob_to_char(col2) from test1" demodb
    $ cp -r /home/kshan/db/CUBRID/demo/lob /home/kshan/lob1
    $ cubrid unloaddb -u dba demodb
    $ sed -i "s/\/home\/kshan\/db\/CUBRID\/demo\/lob\/ces/\/home\/kshan\/lob1\/ces/" demodb_objects
    $ cubrid createdb testdb en_US
    $ cubrid loaddb -v -u dba -s demodb_schema -d demodb_objects testdb
    $ vi $CUBRID/.../databases.txt -- LOB directory 수정
    $ cubrid server start testdb
    $ csql -u dba -c "select col1, col2 from test1" testdb
    $ csql -u dba -c "select col1, clob_to_char(col2) from test1" testdb

    한번 try 해보세요.
  • ?
    김동현 2021.03.12 19:40

    감사합니다. 복사 잘 되었습니다. objects 파일에 있는 경로를 일괄 변경해서 loaddb하네요. 정말 정말 감사합니다. 그냥 unload, load만 해서 사용했다가 clob파일 공유해서 난리가 났었습니다. 이번에는 정말 신중하게 데이터베이스 별도로 생성해서 테스트 다 해보고 했는데 운영DB에도 잘 되었습니다. ㅠ 

    objects파일이 200만줄 가량 되어서 에디터로 여는데도 한세월이었는데 sed 사용하니까 바로 일괄변경 되네요. 정말 감사합니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 119
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4475
3940 이거... 뭐가 문제 일까요? 2 안지민 2011.11.18 27661
3939 CUBRID 설치 문의 입니다. 1 해바라기 2008.12.04 27379
3938 Cannot connect to a broker 1 sjnoh 2010.08.10 27326
3937 2008 RC1.1 매니저 실행에 대한 문제점과 임시적인 해결책 1 GGG특별대원 2008.12.05 27220
3936 실행 오류 :-46 (Internal error: slot 3 on page 4231 of volume) 3 file reerror 2011.11.09 26849
3935 console 에서 만든 db의 password를 바꾸고 싶습니다. 1 살구맛 2013.02.08 26729
3934 Java sp에서 Sybase DB연결시 오류. 2 young 2010.01.12 26599
3933 중복데이터 제거 방법 좀 알려주세요. 11 김경아 2009.05.26 26573
3932 엔터 개행문자 역슬래쉬 문제 4 초보 2010.03.24 26550
3931 ROW_NUMBER() OVER(PARTITION BY 어떻게..해야 할까요??? 5 초식곰 2011.09.09 26461
3930 VARCHAR 타입에 관한 질문. 2 김우람 2009.02.26 26250
3929 오라클과의 호환성과 대용량 검색 속도 1 오004 2009.12.16 26155
3928 select update 쿼리 문의 드립니다. 4 신나여 2013.11.29 26070
3927 CUBRID 2008 R4.0 Beta HA 관련 질문입니다. 6 file 반짝이 2011.05.16 25848
3926 CUBRID 2008 데이터베이스 사용자 권한상속 에러. 6 윤희서 2009.01.17 25834
3925 datetime 값을 to_date 로 형변환 방법좀 알려주세요 1 황선욱 2013.08.20 25793
3924 HA관련 CUBRID Manager 에서 대시보드 문의드립니다... 2 file 반짝이 2011.07.13 25736
3923 cubrid.jdbc.driver.CUBRIDException: 4 아르미 2009.04.03 25729
3922 프로그램 개발 후 배포 관련 3 늘푸른거북이 2009.02.12 25365
3921 [질문] Insert문의 속도 향상 방법이 있나요? 3 ........ 2011.08.10 25234
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales