메뉴 건너뛰기

조회 수 861 추천 수 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
번호 제목 날짜 조회 수
22 그누보드5 검색최적화 방법입니다 file 2019.04.29 876
» 영카트5 DB 테이블별로 덤프하기 2019.04.29 861
20 게시판 기본 스킨 목록 페이지 살펴보기 1 - list.skin.php 2017.04.13 2946
19 게시판 기본 스킨 목록 페이지 살펴보기 2 - 상세 설명 2017.04.13 2321
18 게시판 기본 스킨 글쓰기 페이지 살펴보기 1 - write.skin.php 2017.04.13 2546
17 게시판 기본 스킨 글쓰기 페이지 살펴보기 2 - 상세 설명 2017.04.13 2902
16 게시판 기본 스킨 내용보기 페이지 살펴보기 2 - 상세 설명 2017.04.13 2526
15 여분필드를 활용한 게시판 스킨 제작 - 기본적인 사용 방법 2017.04.13 2890
14 여분필드를 활용한 게시판 스킨 제작 - 기초 예제1-1 file 2017.04.13 3473
13 여분필드를 활용한 게시판 스킨 제작 - 기초 예제1-2 file 2017.04.13 4255
12 여분필드를 활용한 게시판 스킨 제작 - 기초 예제1-3 file 2017.04.13 3273
11 게시판 글쓰기 페이지에 스마트 에디터 2개 이상 사용하기 2017.04.12 2773
10 DatePicker 달력 플러그인을 활용한 날짜 입력 쉽게하기 file 2017.04.12 4611
9 DatePicker 달력 플러그인을 활용한 날짜 입력 쉽게하기 file 2017.04.12 2748
8 이름이나 연락처 중간 부분을 *** 표시로 숨기기 file 2017.04.12 3058
7 게시판 글쓰기 페이지에 다음 API 주소 입력기 사용하기 file 2017.04.12 3728
6 게시판 스킨 목록 페이지에 이전 다음 페이지 링크 만들기 2017.04.12 1912
5 여분필드를 활용한 게시판 스킨 제작 - 여분 필드 10개 이상 사용하기 file 2017.04.12 2395
4 배열을 사용해서 여분필드 한 개로 연락처 입력란 3등분하기 file 2017.04.12 2292
3 게시판 스킨 파일 구조 2016.12.22 2341
Board Pagination Prev 1 2 3 Next
/ 3

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

© k2s0o1d4e0s2i1g5n. All Rights Reserved