MySQL 테이블 체크 및 자동 복구
자체적으로 만든 스크립트를 이용해서 테이블별로 백업을 하면서 테이블 체크를 하는데
mysqlcheck 란 실행 화일을 cron에다 등록 시켜서 해도 상관 없겠다.
$backup_db = array("db1","db2") $optimize =1;
foreach($backup_db AS $dbName) { echo "\n========== $dbName ==========\n"; // DB $cmd="mysql -uroot -p".DB_PW." $dbName -e\"show tables\" "; exec($cmd,$tableArr); // 테이블 foreach($tableArr As $val) { if(strstr($val,"+")) continue; if(strstr($val,"Tables_in_".$dbName)) continue; if(ereg("([a-zA-Z0-9_])+",$val,$regs)) { $tableName=trim($regs[0]); } else continue; // 필요 없는 건 걸러내고 테이블 이름만 취한다. if($optimize) { $opt_exe = "mysql -uroot -p".DB_PW." $dbName -e\"optimize table device.$tableName\" "; exec($opt_exe,$output); } $dateYMD= date("Y-m-d"); $last_line=system("mysqldump -uroot -p".DB_PW."...