로그인

검색

조회 수 12757 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄


우선 php5-cli 가 설치되어 있어야 한다. ( apt-get install php5-cli )

/etc/cron.daily/backup-database.php 파일을 만들어서 루트 실행 권한을 준다. (매일 새벽에 4~5시경 실행)
(chmod 755 backup-database.php 혹은 chmod 700 backup-database.php)그리고 아래의 코드를 넣는다.

본 스크립트는 $디렉토리/$서버이름/$DB네임/$백업파일 에 DB 백업 파일을 저장하게 된다.
60일이 지난 백업 파일은 자동으로 삭데 된다.

 

 #!/usr/bin/php
<?
        $serverName = 'jack';
        $backupDir = '/cutty/database/'.$serverName;
        $mysqldump = '/usr/bin/mysqldump';
        $mysqlId = 'root';
        $mysqlPass = 'password';
        $date = date('ymd', time());
        $expire = date('ymd', strtotime('-60 days'));        $dbConn = new mysqli('localhost', $mysqlId, $mysqlPass);
        $query = $dbConn->query('show databases');
        while($row = $query->fetch_assoc())
        {
                $databases[] = $row['Database'];
                if(!is_dir($backupDir.'/'.$row['Database']))
                {
                        mkdir($backupDir.'/'.$row['Database']);
                }
                exec($mysqldump.' -u '.$mysqlId.' -p'.$mysqlPass.' --single-transaction '.$row['Database'].' > '.$backupDir.'/'.$row['Database'].'/'.$date.'_'.$row['Database'].'.sql');
                exec('gzip '.$backupDir.'/'.$row['Database'].'/'.$date.'_'.$row['Database'].'.sql');
                @unlink($backupDir.'/'.$row['Database'].'/'.$expire.'_'.$row['Database'].'.sql.gz');
        }
?>


 

 

./backup-database.php 식으로 실행하여 테스트 할 수 있다.



리눅스

유용한 정보 및 자료

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
» Server DB 백업 스크립트 (우분투 기준) 보석 2011.05.15 12757
203 Server 우분투 가상호스트 설정 보석 2011.05.15 28952
202 Server 우분투 AMP(아파치,mysql,php)설치 및 셋팅 - 웹서버운영 보석 2011.05.15 13791
201 Server 우분투 루트권한 얻기 보석 2011.05.15 16158
200 Server 우분투 폴더 삭제 및 폴더 생성 보석 2011.05.15 21329
199 Server 우분투 리눅스 자주쓰는 명령어 모음 보석 2011.05.15 13908
198 Server 리눅스 우분투 컴퓨터 종료 끄기 명령어 보석 2011.05.15 18383
197 Server 우분투 폴더 소유권 설정 보석 2011.05.15 16671
196 Server 우분투 webalizer 설치 트래픽 확인 셋팅 방법 보석 2011.05.16 15146
195 Server 우분투 네트워크 트래픽 감시 / 속도 측정 보석 2011.05.16 21008
194 Server 우분투 센드메일 설치 및 설정 sendmail 2 보석 2011.05.16 22441
193 Server 리눅스에서 현재 및 하위 디렉토리의 파일만 퍼미션을 변경하려면 보석 2011.05.18 17514
192 Server kimsq 파일 다운로드시 포인트 차감 설정 보석 2011.05.18 11762
191 Server 리눅스 (우분투) 파일이나 디렉토리(폴더)를 복사하려면? 보석 2011.05.18 19643
190 Server 서버에서 동시 접속자 수를 확인할 수 있는 방법 보석 2011.05.26 19207
189 XE XE (회원 정보) 작성 글 수, 댓글 수를 보여주기 file 보석 2011.06.10 16416
188 Server 리눅스 각 폴더별 용량 확인 하기 1 보석 2011.07.04 14453
187 Server 우분투 리눅스에서 APM 설치하기 (웹서버 설정) 보석 2011.07.04 33242
186 Server 리눅스에서 SSD 최적화 보석 2011.07.08 21245
185 Server 리눅스 하드디스크 복사-교체 보석 2011.07.26 18168
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 Next
/ 11