2014-10-07 6 views
0

이 SQLite는 처음 사용합니다. 오랫동안 오라클/SQL을 사용하여 중앙에서 관리하므로 DBA가 모든 것을 관리합니다.SQLite 백업 및 복원 전략

Java/JSP 응용 프로그램 중 하나에서 SQLite DB를 사용할 계획입니다.

데이터는 내가 응용 프로그램 자체와 동일한 서버에서이 SQLite는 DB 파일을 저장이 DB

에 기록하고 읽을 수 있습니다. DB 파일이 삭제 될 가능성이 있습니다 (이유가 무엇인가)

DB를 점진적으로 백업하고 최악의 경우 복원하기 위해 여기에 적용 할 수있는 백업 및 복원 전략이 궁금합니다.

간단히 때때로 (한 위치에서 다른 위치로 파일을 복사하는 배치 파일) 파일을 복사하고 DB 파일이

+0

"DB 파일을 사용할 수 있기 때문에 파일을 한 위치에서 다른 위치로 복사하기위한 일괄 처리 파일을 복사하기 만하면됩니다."이렇게하면 SQLite 파일을 복사 할 수 있습니다. –

+0

@Tichodroma는 정교하게 신경 써야합니까? 감사합니다 – KK99

+0

그냥 SQLite 파일을 복사하십시오. 그게 전부 야. –

답변

0

얼마나 큰 파일 당신이 얘기를 사용할 수 있습니다으로 다음 작동하지 않습니다? 일반 데이터베이스와 http://tldp.org/HOWTO/LVM-HOWTO/snapshots_backup.html

,이 같이 할 수 MariaDB 같은 :

잠금 문제는 아마도 여기에 설명처럼 LLVM 스냅 샷을 사용하여 해결할 수

  1. 세척 데이터 및 잠금
  2. 를 기록
  3. LLVM 스냅 샷 찍기
  4. 잠금 해제
  5. 어딘가에 스냅 샷을 마운트하고 tar, rsync, tarsnap 등

다시 말해,이 기능을 사용하려면 스냅 샷을 만들 때 어떻게 든 SQLite DB 파일을 잠글 필요가 있습니다.

0

데이터베이스가 현재 쓰여지고 있지 않은 것으로 확신하는 경우 파일을 복사하기 만하면됩니다.

동시 액세스가 가능한 경우 데이터베이스 트랜잭션 내에서 데이터베이스 파일을 읽어야합니다.
SQLite는 backup API입니다. 이를 사용하는 가장 간단한 방법은 .backup 명령을 사용하여 sqlite3 명령 줄 셸을 실행하는 것입니다.

증분 백업을 만들 수있는 메커니즘이 없습니다.