로그인

검색

조회 수 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
번호 분류 제목 글쓴이 날짜 조회 수
15 Server 서버에서 동시 접속자 수를 확인할 수 있는 방법 보석 2011.05.26 19207
14 Server 리눅스 (우분투) 파일이나 디렉토리(폴더)를 복사하려면? 보석 2011.05.18 19643
13 Server kimsq 파일 다운로드시 포인트 차감 설정 보석 2011.05.18 11762
12 Server 리눅스에서 현재 및 하위 디렉토리의 파일만 퍼미션을 변경하려면 보석 2011.05.18 17514
11 Server 우분투 센드메일 설치 및 설정 sendmail 2 보석 2011.05.16 22442
10 Server 우분투 네트워크 트래픽 감시 / 속도 측정 보석 2011.05.16 21008
9 Server 우분투 webalizer 설치 트래픽 확인 셋팅 방법 보석 2011.05.16 15146
8 Server 우분투 폴더 소유권 설정 보석 2011.05.15 16671
7 Server 리눅스 우분투 컴퓨터 종료 끄기 명령어 보석 2011.05.15 18383
6 Server 우분투 리눅스 자주쓰는 명령어 모음 보석 2011.05.15 13908
5 Server 우분투 폴더 삭제 및 폴더 생성 보석 2011.05.15 21329
4 Server 우분투 루트권한 얻기 보석 2011.05.15 16158
3 Server 우분투 AMP(아파치,mysql,php)설치 및 셋팅 - 웹서버운영 보석 2011.05.15 13792
2 Server 우분투 가상호스트 설정 보석 2011.05.15 28952
» Server DB 백업 스크립트 (우분투 기준) 보석 2011.05.15 12757
Board Pagination Prev 1 2 3 4 Next
/ 4