동일한 정의가있는 2 개의 테이블이 있다면 매일 데이터를 어떻게 백업합니까? 이 일부 변경이 만들어 질 것으로 증분 백업 인 경우 수 있습니까 그것은 바람직 할 것이다 하나의 테이블에서 다른 테이블로 매일 백업
- 오전 12시 매일 같은 일을 수행하기 위해 MySQL의 관리자를 사용 main_table에서 모든 행을 복사 backup_table에서 reccords하고 새로운 백업이 변경 사항을 없애고 싶지 않습니다.
감사
동일한 정의가있는 2 개의 테이블이 있다면 매일 데이터를 어떻게 백업합니까? 이 일부 변경이 만들어 질 것으로 증분 백업 인 경우 수 있습니까 그것은 바람직 할 것이다 하나의 테이블에서 다른 테이블로 매일 백업
감사
다음과 같이 시작하겠습니다. 같은 서버의 한 테이블에서 다른 테이블로 데이터를 복사하는 것이 백업이 아닙니다.
이제 MySQL 5.1.6 이상인 경우 이벤트 스케줄러를 사용하여 이러한 작업을 예약 할 수 있습니다. 그것은이
INSERT INTO
secondarydatabase.tableName
SELECT pr.* FROM
primarydatabase.tableName AS pr
LEFT JOIN
secondarydatabase.tableName AS sec
USING(primaryKeyColumn)
WHERE sec.primaryKeyColumn IS NULL
같은 쿼리를 실행하는 것만 큼 간단해야한다
http://dev.mysql.com/doc/refman/5.1/en/events.html
(이 새로운 행을 복사 한 것, 이미 기존 행의 변화는 복사되지 않습니다) 실제 백업에 대한 내용은 다음을 참조하십시오.
예, 당신은 확실히 그렇게 할 수 있습니다. 이 페이지를 보시오 : http://dev.mysql.com/doc/refman/5.0/en/batch-mode.html
테이블을 삭제하지 않고 데이터 손실에 대해 걱정할 필요가없는 새로운 행을 삽입하기 위해 스크립트를 신중하게 작성하는 경우. 테이블의 각 행에 타임 스탬프가 저장되어 있으면 작업이 훨씬 쉬워집니다. 타임 스탬프를 사용하여 마지막 배치 실행 이후에 변경되었거나 추가 된 새 행을로드/업데이트 할 수 있습니다.
그러나 삽입하기 전에 항상 현재 테이블을 백업하는 것이 좋습니다. 임포트가 성공하면 백업 테이블을 정리할 수 있습니다.
+1 이벤트 스케줄러 용. – rkg