copytable

지정한 날짜 범위의 테이블 및 인덱스 데이터 파일을 지정된 백업 경로에 복사하거나 이동합니다. 일반적으로 테이블 및 인덱스 데이터 파일을 주기적으로 NAS 스토리지에 백업하려는 경우에 사용합니다.

명령어 속성

항목설명
명령어 유형드라이버 쿼리
필요 권한클러스터 관리자
라이선스 사용량해당 없음
병렬 실행미지원
분산 실행미지원

문법

copytable path=STR [from=STR] [to=STR] [tables=STR] [indexpath=STR] [worm=BOOL] [overwrite=BOOL] [incremental=BOOL] [move=BOOL]

옵션

path=STR
테이블 백업 경로를 지정합니다. 경로에 백슬래시(\)가 포함된 경우 이스케이프(\\)가 필요합니다.
from=STR
백업 시작 날짜를 yyyyMMdd 포맷으로 지정합니다.
to=STR
백업 끝 날짜를 yyyyMMdd 포맷으로 지정합니다.
tables=STR
복제 대상 테이블 목록을 쉼표로 구분하여 지정합니다. 와일드카드(*)를 지원합니다. 미지정 시 전체 테이블을 대상으로 동작합니다.
indexpath=STR
풀텍스트 인덱스 파일을 복사할 경로를 지정합니다. 미지정 시 테이블 데이터 파일만 백업합니다.
worm=BOOL
t로 설정하면 임시 파일(.transfer)을 생성하지 않고 백업 미디어에 직접 복사합니다. 미지정 시 .transfer 확장자의 임시 파일을 생성한 후 파일 이름을 변경합니다. overwriteincremental 옵션과 함께 사용할 수 없습니다.
overwrite=BOOL
t로 설정하면 백업 미디어에 동일 파일이 이미 존재하는 경우 기존 파일을 삭제하고 다시 씁니다. .transfer 임시 파일을 생성한 후 기존 백업 파일을 삭제하고 이름을 변경하는 과정을 거칩니다. 중간에 쿼리를 취소하면 기존 백업 파일이 유지되고 임시 파일만 삭제됩니다. wormincremental 옵션과 함께 사용할 수 없습니다.
incremental=BOOL
t로 설정하면 백업 미디어에 동일 파일이 이미 존재하는 경우 기존 파일 끝에 데이터를 추가합니다. 이 경우 임시 파일은 생성되지 않습니다. wormoverwrite 옵션과 함께 사용할 수 없습니다.
move=BOOL
t로 설정하면 복사 완료 후 원본 파일을 삭제합니다. 백업 파일의 크기가 원본과 일치하지 않는 경우 원본 파일을 삭제하지 않습니다.

출력 필드

필드타입설명
_time날짜해당 파일의 백업 처리 시각
type문자열백업 대상 유형. table (테이블 데이터 파일) 또는 fulltext (풀텍스트 인덱스 파일)
name문자열테이블 이름 또는 테이블이름.인덱스이름 형식의 인덱스 이름
file_path문자열백업 파일의 절대 경로
file_size64비트 정수파일 크기 (바이트)
status문자열백업 상태
error_msg문자열오류 발생 시 오류 메시지. 정상 처리된 파일에는 이 필드가 할당되지 않습니다.

오류 코드

파싱 오류
오류 코드메시지설명
41006올바르지 않은 백업 옵션입니다.overwrite, incremental, worm 옵션을 상호 배타적으로 사용하지 않은 경우
41009명령어 실행 권한이 없습니다.관리자 권한이 없는 경우
41010올바르지 않은 날짜 구간입니다.from 날짜가 to 날짜보다 뒤인 경우
41011올바르지 않은 테이블 이름입니다.지정한 테이블 이름과 일치하는 테이블이 없는 경우
41012시작 날짜 포맷([from])이 형식(yyyyMMdd)에 맞지 않습니다.from 옵션의 값이 yyyyMMdd 형식이 아닌 경우
41013끝 날짜 포맷([to])이 형식(yyyyMMdd)에 맞지 않습니다.to 옵션의 값이 yyyyMMdd 형식이 아닌 경우
41014조회할 [file]이 존재하지 않거나 읽을수 없습니다.지정한 백업 경로가 존재하지 않거나 읽을 수 없는 경우
41015필드명을 입력하십시오.path 옵션을 지정하지 않은 경우
런타임 오류

해당 사항 없음

설명

copytable 명령어는 각 데이터 파일의 복사를 수행하면서 현재 진행 상황을 레코드로 출력합니다. 이미 같은 이름의 파일이 존재하거나, 이름 변경이 실패하거나, 백업 미디어의 용량이 부족한 경우 등 예외적인 상황이 발생하면 error_msg 필드에 오류 내용을 할당합니다. 이를 이용하면 오류 발생 시 경보 메일을 전송하는 등의 후처리를 수행할 수 있습니다. 중간에 일부 데이터 파일의 백업에 실패하더라도 사용자가 명시적으로 취소하기 전까지 쿼리는 중단되지 않고 실행됩니다.

별도의 옵션을 지정하지 않으면 복사 시 .transfer 확장자의 임시 파일을 생성하고 완료 후 원래 파일 이름으로 변경합니다. 쿼리를 취소하면 임시 파일이 삭제됩니다.

복사를 시작하기 전에 메모리에 버퍼링된 데이터를 디스크로 플러시하기 위해 테이블 잠금을 잠시 획득합니다. 이미 잠금이 걸려 있는 테이블은 메모리에 데이터가 없는 것이 보장되므로 잠금을 건너뜁니다.

indexpath 옵션을 지정하면 각 테이블에 대해 먼저 테이블 데이터 파일을 복사한 후 풀텍스트 인덱스 파일을 복사합니다.

이 명령어는 4.0.2511.0 버전부터 클러스터 관리자 권한이 필요하며, 접근 가능한 파일 경로가 제한됩니다. 자세한 내용은 파일 접근 제한을 참고하세요.

사용 예

각 사용 예의 파일 경로는 ALLOWED_FILE_SCAN_PATHS 설정에 포함되어 있다고 가정합니다.

  1. 전체 테이블 백업

    copytable path="/backup/logpresso" from=20260101 to=20260131
    
  2. 특정 테이블을 인덱스와 함께 백업

    copytable path="/backup/logpresso" indexpath="/backup/logpresso" from=20260101 to=20260131 tables="firewall_logs,web_logs"
    
  3. 증분 백업

    copytable path="/backup/logpresso" from=20260301 to=20260317 incremental=t
    
  4. 백업 후 원본 삭제 (이동)

    copytable path="/backup/logpresso" from=20250101 to=20250131 move=t
    
  5. 덮어쓰기 백업

    copytable path="/backup/logpresso" from=20260301 to=20260317 overwrite=t
    

호환성

copytable 명령어는 소나 4.0 이전 버전부터 제공되었습니다. 4.0.2511.0 버전부터 클러스터 관리자 권한이 필요합니다.