[수정] 데이터베이스 & 서버파일 백업 플러그인 > 그누보드5 플러그인

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!

그누보드5 플러그인

그누보드는 다양한 기능을 추가하기 쉽습니다.

[수정] 데이터베이스 & 서버파일 백업 플러그인 정보

[수정] 데이터베이스 & 서버파일 백업 플러그인

첨부파일

humorous_data_backup24.08.26.zip (7.1K) 77회 다운로드 2024-08-26 09:10:42 포인트 차감100
backup_update.php (3.2K) 4회 다운로드 2024-08-26 09:10:42 포인트 차감100
테스트한 버전5.6.4
호환 가능 버전5.6.4

본문

일반 호스팅 회사에서는 데이터베이스 및 서버 파일을 자동 백업을 제공하고 있습니다.

그렇지만, 모 회사에는 데이터베이스 + 서버 파일 백업 시 유료로 부과하고 있습니다.

이런 경우는 매번 힘들게 할 필요없이 쉽게 백업할 수 있는 플러그인입니다.

 

:: 설치법

 

- 압축 파일 해제 
plugin 폴더 / extend 폴더를 그대로 업로드 (중복 파일 없음)

- 관리자 로그인 > 관리자 페이지 접속 시 필요 데이터 베이스가 자동 설치 됩니다.

- 관리자 화면 > 환경설정 > 맨 하단에 데이터 백업 메뉴 확인

 

978180634_1724043061.7912.png

 

:: 사용법

 

- 관리자 화면 > 환경설정 > 맨 하단에 데이터 백업 메뉴 > 원하는 작업 체크 > 우측 상단 완료 끝

 

 

:: 백업 이력

 

- 서브 페이지 백업 이력 메뉴 클릭 시 백업 이력 확인 가능

 

978180634_1724043249.7553.png

 

 

※ 데이터는 루트 디렉토리 내 /backup 폴더에 저장됩니다.

 

978180634_1724043262.6235.png

 

php8에서도 정상 동작합니다.

 

당연하겠지만, 서버 내 용량이 부족하면 실패하거나 백업이 되지 않으므로, 호스팅 내 용량 확인은 반드시 필수!

 

고맙습니다.

 

[업데이트]

 

24.08.26 : 백업 시 백업 폴더로 포함하던 부분을 수정

 님께서 제보해주셨습니다.

 

압축 파일도 수정 되었으며, 업데이트만 원하시는 분은

파일 2번 다운로드 하신 다음 plugin\data_backup 폴더에 붙혀넣어주세요

 

추천
25

댓글 전체

backup_update.php에서 backup 디렉토리 제외하기


                foreach ($files as $name => $file) {
                    if (!$file->isDir()) {
                        $filePath = $file->getRealPath();
                        $relativePath = substr($filePath, strlen($rootPath) + 1);
                        $zip->addFile($filePath, $relativePath);
                    }
                }
를 => 으로
                foreach ($files as $name => $file) {
                    // 백업 디렉토리를 제외
                    if (strpos($file->getRealPath(), realpath($backupDir)) === 0) {
                        continue;
                    }
                    if (!$file->isDir()) {
                        $filePath = $file->getRealPath();
                        $relativePath = substr($filePath, strlen($rootPath) + 1);
                        $zip->addFile($filePath, $relativePath);
                    }
                }

하였습니다.

제보 감사합니다.^0^

 

코드가 다음과 같이 수정 되었습니다.

 


foreach ($files as $name => $file) {
                    if (!$file->isDir()) {
                        $filePath = $file->getRealPath();
                        $relativePath = substr($filePath, strlen($rootPath) + 1);
                       
                        // $backupDir 디렉토리는 백업하지 않음
                        if (strpos($relativePath, basename($backupDir)) !== 0) {
                            $zip->addFile($filePath, $relativePath);
                        }
                    }
                }

php 버전이 5.x 대를 사용하고 있어서
innoDB가 없다고 에러가 나와서 MyISAM 로 수정해봤는데
다시 auth_check_menu() 함수 에러 메시지가 나와서
auth_check_menu() 함수를 추가해주고 실행해 봤습니다.

완료 버튼을 누르자마자 백업이 완료되었습니다
알림창이 나오고
밑에는 백업중입니다가 계속 로딩하는 창이 나옵니다.

결과적으로 백업은 안되고 있구요.

php버전때문에 그런 상황이 맞는거겠죠?
버전업말고는 수정할 방법이 없을까요
 

@아론다론 제가 5.x 버전이 없어서 테스트 자체가 불가능합니다.

 

요즘 호스팅도 7.x 버전을 기본 베이스로 하고 있는 상태이니,

 

업데이트를 추천드립니다 ㅠ_ㅠ

24.08.26 : 백업 시 백업 폴더로 포함하던 부분을 수정

 님께서 제보해주셨습니다.

 

압축 파일도 수정 되었으며, 업데이트만 원하시는 분은

파일 2번 다운로드 하신 다음 plugin\data_backup 폴더에 붙혀넣어주세요

게시판 데이터가 많으면 백업이 되질 않는것 같은데

뭔가 수정할 부분이 혹시 있을까요?

디비는 잘되는데 데이터가 중간에 오류가 나며 백업이 안됩니다.

 

게시글은 삼천개 정도에 각 게시물마다 이미지가 많은 편입니다.

전체 7
그누보드5 플러그인 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT