테스트 사이트 - 개발 중인 베타 버전입니다

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

서버백업.png

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

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

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

 

:: 설치법

 

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

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

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

 

978180634_1724043061.7912.png

 

:: 사용법

 

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

 

978180634_1724043218.274.gif

 

:: 백업 이력

 

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

 

978180634_1724043249.7553.png

 

 

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

 

978180634_1724043262.6235.png

 

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

 

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

 

고맙습니다.

 

[업데이트]

 

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

@들레아빠 님께서 제보해주셨습니다.

 

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

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

 

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 49개

좋은 자료 감사합니다.

@위드스텝 감사합니다!!

오 이건 정말 필수 플러그인이네요. 고맙습니다!!

@뒷집돌쇠 고맙습니다^^

감사 합니다.

@들레아빠 감사합니다!!

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

[code]

                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);
                    }
                }

[/code]

하였습니다.

제보 감사합니다.^0^

 

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

 

[code]

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);

                        }

                    }

                }

[/code]

와우 대박소스을 공개해 주셔서 감사합니다

 

@미키손 감사합니다^^

🫰👍👍👍👍 감사합니다

@Tak2 감사합니다!!

오마이갓 감사합니다.

@데코이 감사합니당^^

감사합니다 ^^

@민트다이어리 감사합니다 ^^

오~ 좋은 정보 정말 감사합니다.

@깽이s 감사합니다~+ㅁ+

좋은 자료 공유 감사합니다!

@URJO 감사합니다!!

와우! 공개 너무 감사합니다.

@스펀지둘 감사합니다.

오 ...편하고 좋네요

@모노패러다임 감사합니다!!

좋은 자료 감사합니다.

@하늘뚱 감사합니다!

오우 감사합니다

@DawnDew 감사합니다!!^^

@라리고 고맙습니다.ㅎ

adm/view.php 파일을 @미니님a  덕분에 알았네요.

감사합니다.

@위드스텝 저도 하나하나 배워가고 있습니다. 예전엔 막 수정 했다면, 지금은 extend 로 난도질을 ㅎㅎㅎㅎ

오 좋네요 ^^ 고맙습니다.쪽~

@웅프 감사합니다.

고생하셨습니다. ^^

@techstar 감사합니다^ㅡ^

감사합니다

@발렌슈테인 고맙습니다!+ㅁ+

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

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

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

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

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

 

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

 

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

감사합니다 ^^

@민트다이어리 고맙습니다^ㅡ^

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

@들레아빠 님께서 제보해주셨습니다.

 

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

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

감사합니다. 뽀뽀쪽옥~

정말 고맙습니다.

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

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

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

 

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

만약 특정 폴더 예를 들면 data 혹은 기타 폴더도 백업에서 제외 할려면 어덯게 해야할가요?

백업 폴더는 정상적으로 백업되는데, 데이타베이스가 백업이 안되는데 뭘 확인해봐야 할까요??

게시판 목록

그누보드5 플러그인

그누보드 호환이거나 독립적으로 실행되는 플러그인을 소개합니다.
글쓰기
🐛 버그신고