자동 Odoo 백업 설정 방법

자동 Odoo 백업 설정 방법

2022-05-17 last update

7 minutes reading backup cron odoo cronjob
이 자습서에서는 Odoo 데이터베이스를 만드는 과정을 설명합니다.Odoo는 Python으로 작성된 가장 유행하는 소스 ERP 시스템으로 PostgreSQL을 데이터베이스 백엔드로 사용한다.Odoo는 PostgreSQL 데이터베이스에 데이터를 저장합니다.데이터베이스를 정기적으로 백업하면 Odoo가 설치된 모든 사람에게 중요한 잠재적인 재해 데이터 손실로부터 보호됩니다.

Odoo 데이터베이스 관리 인터페이스

Odoo 데이터베이스 관리 인터페이스는 데이터베이스를 백업, 복제, 삭제, 창설하고 복구하는 도구를 제공한다.데이터베이스 관리 인터페이스를 사용하여 백업을 만드는 것은 쉬운 일이다.브라우저를 열고 http://your_server_ip:8069/web/database/manager만 탐색하면 됩니다.다음 화면이 표시됩니다. Backup 링크를 클릭하면 새 팝업 창이 표시됩니다. Odoo 데이터베이스 메인 비밀번호를 입력하고 파란색Backup 단추를 눌러 백업을 만듭니다.데이터베이스 크기에 따라 백업을 준비하는 데 시간이 걸릴 수 있습니다.

명령줄에서 데이터베이스 백업 만들기

Odoo 데이터베이스 관리 인터페이스를 통해 백업을 만드는 방법을 알았으니 같은 도구를 사용하여 명령줄에서 백업을 만드는 방법은 무엇입니까?답은 간단하다.사용 wget
또는 curl
. 이 두 가지 도구는 모두 POST를 통해 데이터를 발송할 수 있으며 우리는 POST를 사용하여 필요한 변수를 Odoo 데이터베이스 도구에 전달할 수 있다.다음 예에서 우리의 주 비밀번호는 ADMIN_PASSWORD입니다. back_up_filename.zip라는 데이터베이스의 백업 파일DB_NAME을 만들고 있습니다. 이 파일은 backup_dir 디렉터리에 저장됩니다.
curl -X POST -F 'master_pwd=ADMIN_PASSWORD' -F 'name=DB_NAME' -F 'backup_format=zip' -o /backup_dir/back_up_filename.zip http://localhost:8069/web/database/backup
wget가 아닌 curl를 더 좋아한다면 다음과 같은 명령을 사용할 수 있습니다.
wget --post-data 'master_pwd=ADMIN_PASSWORD&name=DB_NAME&backup_format=zip' -O /backup_dir/back_up_filename.zip http://localhost:8069/web/database/backup
백업을 원격 위치localhost에서 만들려면 Odoo 실례의 URL을 입력해야 합니다.이 경우 인터넷을 통해 암호를 명문으로 보내지 않으려면 HTTPS를 사용하는 것이 좋습니다.Odoo를 Nginx로 구성하는 방법에 대한 추가 정보here를 확인할 수 있습니다.

자동 Odoo 백업 설정

백업 프로세스를 자동화하고 Odoo 데이터베이스를 정기적으로 백업하기 위해 cron job
. Odoo 데이터베이스01:30 am를 매일 백업하고 최신 7개의 백업을 보존하고 싶다고 가정합니다.간단한 bash 스크립트를 만들 것입니다. 필요에 따라 ~/backup\u-odoo라고 이름을 붙일 수 있습니다.91675(913)를 사용하여 실행 가능한 스크립트
:
#!/bin/bash

# vars
BACKUP_DIR=~/odoo_backups
ODOO_DATABASE=db1
ADMIN_PASSWORD=superadmin_passwd

# create a backup directory
mkdir -p ${BACKUP_DIR}

# create a backup
curl -X POST \
    -F "master_pwd=${ADMIN_PASSWORD}" \
    -F "name=${ODOO_DATABASE}" \
    -F "backup_format=zip" \
    -o ${BACKUP_DIR}/${ODOO_DATABASE}.$(date +%F).zip \
    http://localhost:8069/web/database/backup


# delete old backups
find ${BACKUP_DIR} -type f -mtime +7 -name "${ODOO_DATABASE}.*.zip" -delete
필요에 따라 변경chmod, BACKUP_DIRODOO_DATABASE 변수를 잊지 마십시오.마지막 단계는 새로운cron 작업을 만드는 것입니다. 이 작업은 매일 ADMIN_PASSWORD 실행됩니다.
sudo chmod +x ~/backup_odoo.sh
crontab -e
백업 스크립트의 정확한 이름과 경로를 설정하는 것을 잊지 마십시오.스크립트를 수정하고 원격 백업 스토리지 사용, 주간 및 매월 백업 유지 등 보다 강력한 백업 솔루션을 구현할 수 있습니다.등

Odoo 데이터베이스 복원

데이터베이스 관리 인터페이스를 사용하여 데이터베이스 백업을 복원하려면 브라우저를 열고 01:30 am로 이동하십시오.(adsbygoogle=window.adsbygoogle | |[]).추진({}); http://your_server_ip:8069/web/database/manager 단추를 누르면 새 팝업 창이 표시됩니다. Odoo 데이터베이스 메인 비밀번호를 입력하고 백업 파일을 선택하고 새로운 데이터베이스 이름을 입력한 다음 파란색Restore Database 단추를 누르면 데이터베이스를 복구합니다.데이터베이스를 복구하기 전에 데이터베이스를 삭제하거나 다른 데이터베이스 이름을 사용해야 합니다.데이터베이스 크기와 인터넷 속도에 따라 복구 과정에 시간이 좀 걸릴 수 있습니다.우리는 또한 명령줄에서 데이터베이스를 복구할 수 있습니다.
30 1 * * * /home/<yourusername>/backup_odoo.sh
물론, 당신은 Odoo 메인 비밀번호, 데이터베이스 백업 경로와 데이터베이스 이름 조정 명령을 사용해야 합니다.복구에 성공하면 출력은 다음과 같습니다:
curl -F 'master_pwd=superadmin_passwd' -F [email protected]/opt/odoo/odoo_backups/db1.2018-04-14.zip -F 'copy=true' -F 'name=db3' http://localhost:8069/web/database/restore

결론

이 강좌는cronjob을 사용하여 Odoo 데이터베이스의 자동 일일 백업을 만드는 것을 지도합니다.질문이나 피드백이 있으면 언제든지 댓글을 달아주세요.