Background Image

FORUM

조회 수 10055 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
데이터 파일이 저장되는 공간의 불필요한 용량을 줄일 수 있는 방법에 대해 문의하고자 합니다.

현재 시스템에서 df -h를 치면 아래와 같구요

Filesystem            Size  Used Avail Use% Mounted on
/dev/sda7             4.0G  2.4G  1.5G  62% /
/dev/sda1              99M   12M   82M  13% /boot
/dev/sdb1              68G   29G   36G  45% /cubriddata1
/dev/sdb2              68G   85M   64G   1% /cubriddata2
none                  2.0G     0  2.0G   0% /dev/shm
/dev/sda8             103G   14G   85G  14% /home
/dev/sda2             9.9G   55M  9.3G   1% /logs
/dev/sda6             4.0G  289M  3.5G   8% /var
/dev/sda3             9.9G   55M  9.3G   1% /www

여기서
/dev/sdb1              68G   29G   36G  45% /cubriddata1
이 파티션에 데이터가 저장됩니다.

현재 29GB를 사용중인데
용도상의 특징이 하루에 3만개 정도의 레코드가 insert되고 2일치만 보관이 되고 나머지는 매일 삭제되기 때문에
실제 테이블에 들어있는 레코드수는 4~6만개 정도밖에 안되는 대신
매일 레코드가 삭제되면서 점점 디스크 사용량은 늘어난다는데 있습니다.

시스템 운영을 시작한지는 5개월 반 정도 되구요.

이 추세라면 올해 연말이 되면 디스크가 풀이 날것으로 보여 몇달 이내에
DB를 삭제하고 다시 생성해야 할 것 같습니다.

DB를 삭제하고 다시 생성하는것 말고 다른 방법이 있는지 궁금합니다.
그럼 수고하세요.
  • ?
    Prototype 2009.05.30 02:33
    위와 같은 현상이 발생 하는 이유는, 데이터 볼륨의 크기의 증가 보다는, insert, delete 가 반복됨에 따라 로그 볼륨이 증가하기 때문입니다.
    해결책은 크게 두가지가 있습니다.
    첫번째는 cubrid.conf 파일에 media_failure_support 파라메터를 no 로 설정 하는 것입니다.

    //cubrid.conf 제일 아래에 추가
    media_failure_support=no

    기본적으로 cubrid.conf 파일에 media_failure_support 파라메터를 설정 하지 않았을 경우, 기본값인 yes가 적용되며, 보관 로그를 자동으로 삭제 하지 않습니다.
    다만, 파라메터 이름에서 알 수 있듯이 보관로그를 삭제한다면 디스크 장애가 생겼을 경우 데이터 베이스 복구가 불가능 한 경우가 발생할 수도 있기 때문에 설정에 주의를 요합니다.

    두번째 방법은 backupdb 유틸리티에 -r 옵션을 사용 하는 방법입니다.
    cubrid backupdb -r 디비명
    으로 수행 하시면, db백업을 하게 되는데, 이 과정에서 불필요한 로그 어카이브를 삭제 하게 됩니다.

    상황에 따라 두 방법중 적절한 방법을 사용 하시면 될 것입니다.
  • ?
    cubebridge 2009.05.30 02:47
    우선 Disk공간을 많이 차치하는 이유는 여러가지 있습니다. 정확한 원인 알기 위해서는 아래의 수행 결과를 보여주세요.
    $cubrid spacedb <db_name>
    또한 DB볼륨이 있는 디렉토리에서 ls수행 후 "<db_name>_lgar숫자"로 생성되는 파일 각각의 크기와 개수를 확인해 주시기 바랍니다.
    위의 설명 중 1안은 권장하지 않습니다. 위의 설명대로 불완전 복구만 가능하기 때문입니다.
    로그 관리를 위해서는 2안을 이용하여 주기적으로 백업을 해주시기 바랍니다.
    또한 위와 같이  insert/delete가 빈번하게 일어나는 서비스의 경우 공간 재사용의 영향이 있을 것으로 생각됩니다. 이 경우는 아래와 같은 명령어로 불필요한 공간을 반환해 주어야 합니다. 단 해당 명령어 수행을 위해서는 DB서비스를 정지시켜야하므로 실행에 유의하시기 바랍니다.
    $cubrid compactdb <db_name>
    위의 작업은 크기와 상태에 따라 시간이 오래 걸릴 수 있습니다. 
    작업 후 cubrid spacedb <db_name>과 작업 전의 cubrid spacedb <db_name> 결과를 비교하시기 바랍니다.

  1. No Image notice by admin 2024/04/23 by admin
    Views 48 

    CUBRID 사용자를 위한 DBeaver 도구 출시 안내

  2. SQLGate for CUBRID 영구 무료 라이선스 제공

  3. Date 형 쿼리 문의

  4. 사용자 권한부여가 안됩니다.

  5. VPN 연결된 컴퓨터에는 큐브리드메니져가 실행이 안되나요?

  6. 데이터 삽입 쿼리

  7. max_clients값이 450이상 설정되지 않습니다.

  8. 데이터베이스 공간 정리중 오류메시지

  9. CUBRID Manager 오류메시지 문의드립니다.

  10. cubrid.conf의 max_clients가 안늘어납니다.

  11. 테이블 수정 문의

  12. 큐브리드 2.2로 업그레이드시 single_byte_compare문제

  13. 테이블 생성 문의

  14. Java Stored Procedure 사용시 에러 문의드려요~

  15. 테이블의 내용 컬럼을 다른 테이블에 분리시 성능 향상 여부

  16. autocommit off 방법 문의

  17. Cubrid Manager 오류 문의

  18. CUBRID와 PHP 연동 문제

  19. 큐브리드 R2.2 PHP모듈 XP서 컴파일 방법 문의2

  20. 큐브리드 메니저 2.2 에서 엑셀파일 임포트는 어떻게?

  21. 큐브리드 R2.2 PHP모듈 XP서 컴파일 방법 문의

  22. 독립실행모드에서 unloaddb 할 경우.

Board Pagination Prev 1 ... 162 163 164 165 166 167 168 169 170 171 ... 200 Next
/ 200

Contact Cubrid

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