메뉴 건너뛰기

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

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
<?php
require_once './_common.php';

$tables  = [];
$exclude = [
    'g5_autosave'
    'g5_visit',
    'g5_visit_sum'
];

$result = sql_query("SHOW TABLES");

for ($i = 0; $row = sql_fetch_array($result); $i++) {
    $tables[] = array_pop($row);
}

$userInfo = posix_getpwuid(fileowner(__FILE__));
$owner = $userInfo['name'];

$dir = '/home/dbbackup/'.$owner.'/'.date('Ymdhi');
mkdir($dir, 0755, true);

// 7일 초과 경과된 data 삭제
$basedir = dirname($dir);
$basetime = time() - 86400 * 7;

foreach (scandir($basedir) as $val) {
    if (in_array($val, array('.', '..')))
        continue;

    $d = $basedir.'/'.$val;

    if (filemtime($d) < $basetime) {
        if (is_dir($d)) {
            foreach (scandir($d) as $v) {
                if (in_array($v, array('.', '..')))
                    continue;

                if (is_file($d.'/'.$v))
                    @unlink($d.'/'.$v);
            }

            rmdir($d);
        } else {
            @unlink($d);
        }
    }
}

// DB 백업
$host = G5_MYSQL_HOST;
$user = G5_MYSQL_USER;
$pass = G5_MYSQL_PASSWORD;
$database = G5_MYSQL_DB;

foreach ($tables as $table) {
    if (in_array($table, $exclude))
        continue;

    $file = $dir.'/'.$table.'.sql';

    exec("mysqldump --user={$user} --password={$pass} --host={$host} {$database} {$table} --result-file={$file} 2>&1", $output);
}

List of Articles
번호 제목 날짜 조회 수
40 DatePicker 달력 플러그인을 활용한 날짜 입력 쉽게하기 file 2017.04.12 4283
39 다음날 00시에 쿠키 만료되도록 하는 방법 2014.02.27 4283
38 여분필드를 활용한 게시판 스킨 제작 - 기초 예제1-2 file 2017.04.13 4127
37 여분필드를 활용한 게시판 스킨 제작 - 기초 예제1-1 file 2017.04.13 3248
36 여분필드를 활용한 게시판 스킨 제작 - 기초 예제1-3 file 2017.04.13 3137
35 이름이나 연락처 중간 부분을 *** 표시로 숨기기 file 2017.04.12 2838
34 여분필드를 활용한 게시판 스킨 제작 - 기본적인 사용 방법 2017.04.13 2739
33 게시판 기본 스킨 목록 페이지 살펴보기 1 - list.skin.php 2017.04.13 2709
32 게시판 기본 스킨 글쓰기 페이지 살펴보기 2 - 상세 설명 2017.04.13 2635
31 게시판 글쓰기 페이지에 다음 API 주소 입력기 사용하기 file 2017.04.12 2632
30 게시판 글쓰기 페이지에 스마트 에디터 2개 이상 사용하기 2017.04.12 2618
29 DatePicker 달력 플러그인을 활용한 날짜 입력 쉽게하기 file 2017.04.12 2570
28 그누보드 확장변수 사용 2016.12.22 2470
27 게시판 기본 스킨 글쓰기 페이지 살펴보기 1 - write.skin.php 2017.04.13 2425
26 게시판 기본 스킨 내용보기 페이지 살펴보기 2 - 상세 설명 2017.04.13 2382
25 여분필드를 활용한 게시판 스킨 제작 - 여분 필드 10개 이상 사용하기 file 2017.04.12 2261
24 게시판 기본 스킨 목록 페이지 살펴보기 2 - 상세 설명 2017.04.13 2202
23 게시판 스킨 파일 구조 2016.12.22 2187
22 배열을 사용해서 여분필드 한 개로 연락처 입력란 3등분하기 file 2017.04.12 2176
21 게시판 스킨 목록 페이지에 이전 다음 페이지 링크 만들기 2017.04.12 1825
Board Pagination Prev 1 2 Next
/ 2

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved