운영 가이드 최종 업데이트: 시놀로지 전용 백업/복구 경로(/volume1/backup/smart_ims) 및 절차 명시

This commit is contained in:
choibk 2026-01-25 00:04:16 +09:00
parent 812e7b8504
commit cb8d9713b3

View File

@ -105,36 +105,47 @@ pm2 reload smartims-api
---
## 5. 데이터 백업 및 유지관리 절차 (시놀로지 운영 서버 기준)
## 5. 데이터 백업 및 복구 절차 (시놀로지 전용)
자동 업데이트는 데이터를 안전하게 유지하지만, 서버 이전이나 예기치 못한 환경 변화에 대비하여 다음 절차에 따라 주기적으로 백업하는 것을 권장합니다.
자동 업데이트는 데이터를 안전하게 유지하지만, 만약의 사태나 서버 이전을 위해 현재 운영 중인 백업 폴더(`/volume1/backup/smart_ims`)를 활용한 절차를 안내합니다.
### ✅ 자동 업데이트 시 데이터 안전성
* **파일 안전**: 시스템 관리 메뉴를 통한 **[자동 업데이트]** 실행 시, `server/uploads` 폴더는 Git 추적 제외 대상이므로 **삭제되거나 초기화되지 않고 그대로 유지**됩니다.
* **DB 안전**: 업데이트 시 기존 데이터베이스의 테이블 구조만 업데이트(Migration)하며, 이미 등록된 자산 데이터는 보존됩니다.
* **DB 안전**: 업데이트 시 기존 데이터베이스의 테이블 구조만 업데이트하며, 이미 등록된 자산 데이터는 보존됩니다.
### 📦 수동 백업 절차 (Step-by-Step)
운영 서버(시놀로지) SSH 터미널에서 아래 순서대로 실행하여 백업 파일을 생성합니다.
---
### 📦 데이터 백업 절차 (Backup)
운영 서버 SSH 터미널에서 실행하여 지정된 백업 폴더에 저장합니다.
#### 1단계: 업로드 이미지 백업
자산 이미지 및 매뉴얼 파일이 저장된 폴더를 압축합니다.
```bash
# [위치: /volume1/web/smartims]
# uploads 폴더를 backup_images_오늘날짜.tar.gz로 압축
tar -czvf backup_images_$(date +%Y%m%d).tar.gz server/uploads/
tar -czvf /volume1/backup/smart_ims/backup_images_$(date +%Y%m%d).tar.gz server/uploads/
```
#### 2단계: 데이터베이스(DB) 백업
시스템의 모든 텍스트 데이터(자산 정보, 계정, 로그 등)를 추출합니다.
```bash
# [위치: /volume1/web/smartims]
# .env에 설정된 정보를 바탕으로 DB 전체를 백업
# (비밀번호 입력 프롬프트가 뜨면 DB 비밀번호 입력)
/usr/local/mariadb10/bin/mysqldump -u root -p smartims > backup_db_$(date +%Y%m%d).sql
/usr/local/mariadb10/bin/mysqldump -u root -p smartims > /volume1/backup/smart_ims/backup_db_$(date +%Y%m%d).sql
```
#### 3단계: 백업 파일 안전 보관
생성된 `backup_images_*.tar.gz``backup_db_*.sql` 파일을 시놀로지 File Station을 통해 외부 저장소나 PC로 내려받아 보관하십시오.
---
### 🔄 데이터 복구 절차 (Restore / Recovery)
서버 재설치 등으로 데이터 복구가 필요한 경우 아래 순서대로 실행합니다.
#### 1단계: 이미지 복구 (압축 해제)
```bash
# [위치: /volume1/web/smartims]
tar -xzvf /volume1/backup/smart_ims/backup_images_[날짜].tar.gz -C ./
```
#### 2단계: 데이터베이스(DB) 복원
```bash
# [위치: /volume1/web/smartims]
/usr/local/mariadb10/bin/mysql -u root -p smartims < /volume1/backup/smart_ims/backup_db_[날짜].sql
```
---
@ -142,4 +153,4 @@ tar -czvf backup_images_$(date +%Y%m%d).tar.gz server/uploads/
1. **실행 위치 확인**: 특히 `pm2` 명령어나 `server` 관련 설정은 반드시 `server` 폴더 내에서 실행하거나 경로를 정확히 지정해야 합니다.
2. **경로 이동 주의**: `cd server`를 통해 폴더를 이동하여 작업을 마친 후에는 반드시 `cd ..`를 통해 다시 루트 폴더로 복귀하여 다음 작업에 혼선이 없도록 합니다.
3. **권한 관리**: 운영 서버에서는 반드시 서비스 실행 권한을 가진 계정으로 명령어를 실행해야 `PM2` 프로세스 관리에 문제가 생기지 않습니다.
4. **수동 설치 주의**: `git clone`을 새로 받아 설치할 때는 기존 `uploads` 폴더가 포함되어 있지 않으므로 반드시 위 1단계에서 만든 백업본을 복구해야 합니다.
4. **수동 설치 주의**: `git clone`을 새로 받아 설치할 때는 기존 `uploads` 폴더가 포함되어 있지 않으므로 반드시 위 **복구 절차**를 통해 데이터를 복구해야 자산 이미지가 나타납니다.