2013-03-09 3 views
3

고객이 사용할 사이트를 구축하고 있습니다. 거기에 기본 정보와 프로젝트 또는 서비스가 저에게 내 회사에 저장됩니다. 전체 로그인 + 패널은 SSL/HTTPS 하에서 실행되지만 데이터베이스 서버 복제에 대한 주요 관심사는 무언가가 손실되는 이벤트를 방지하기 위함입니다.MySQL 데이터베이스 복제 방법

일부 프로젝트는 클라이언트가 내게 호스팅하기 때문에 데이터가 안전하고 확실하다는 것을 확신 할 수있는 방법이 필요합니다. 현재 Media Temple GS 서비스를 사용하고 있지만 더 많은 고객이 픽업을 시작하는 DV 서비스로 이동할 것입니다.

나는 개인적인 지식을 바탕으로 하드 드라이브와 같은 일을 할 생각이었습니다. 마스터와 슬레이브가있는 곳. SQL 용어로는 마스터 (인덱스) 데이터베이스가 있고 슬레이브 (캐시) 데이터베이스는 거의 없을 것입니다.

그러나 문제는 마스터를 슬레이브에 복제하거나 백업하는 가장 좋은 방법은 무엇이며 추가 GS 또는 DV 서버가 있어야합니까? 아니면 동일한 서버를 사용하고 있지만 다른 DB 이름을 사용하면됩니까?

편집 나는 MT를 둘러 보았고 거기서 두 번째 서버를 소유하고있는 것처럼 MySQL GridContainer를 건너왔다. 이것이 제 2의 서버를 작동시키는 좋은 대안일까요?

+0

서버에서 실행중인 MySQL 데이터베이스를 동일한 서버에서 실행중인 다른 MySQL 인스턴스로 복제하는 것은 가치가 없습니다. 데이터베이스를 다른 서버에 복제하도록 일반 MySQL 복제를 구성하는 것은 매우 간단합니다. 서버가 원격으로 사용할 수있는 MySQL 복제 사용자를 설정하기 만하면됩니다. –

+1

@PhilipWhitehouse 당신은 백업에 사용되는 복제를 이해하지 못합니다. 백업용 복제 기능을 사용하면 데이터베이스 (슬레이브)를 중지하고 마스터 데이터베이스를 중지하지 않고 전체 백업을 수행 할 수 있습니다. 슬레이브 데이터베이스는 다른 서버로 이동/복사 할 수있는 "스냅 샷"일 뿐이므로 동일한 시스템을 사용할 수 있습니다. – Kamil

+0

@ 카밀 나는 구체적으로 "달리기"라고 말했습니다. 스냅 샷은 완전히 다릅니다. 사용자가 실시간 캐시에 대해 이야기하고 있습니다. –

답변

3

백업용 복제 아이디어는 프로덕션 데이터베이스가 실행되는 동안 정지 된 데이터베이스의 전체 백업을 중지하고 작성할 수있는 다른 데이터베이스에 데이터베이스를 복제하는 것입니다.

백업 파일을 만드는 데 동일한 서버를 사용할 수 있지만 백업을 수행하면 서버 성능이 저하 될 수 있습니다 (하드 디스크로드). 또한 데이터베이스가 크고 기록 백업 파일이 필요할 때 백업 파일을 압축해야 할 수 있으며 압축 작업으로 인해 서버 성능이 완전히 손상 될 수 있습니다.

어쨌든 다른 컴퓨터에 백업을 복사해야하기 때문에 두 번째 서버를 피할 수 없습니다 (동일한 컴퓨터의 백업은 의미가 없습니다).

일반적으로 다른 시스템에 복제하는 것이 좋으며, 마스터 서버가 다운되었을 때 위기 상황에서도 사용할 수 있습니다.

고 가용성 MySQL에 대한 여러 솔루션에 대한 멋진 기사가 있습니다. link to mysql.com.

+0

MT는 강력한 SQL 풀을 제공합니다.그리고 내가 말했듯이 보조 AV가 데이터 가용성을 제공하는 데 필요한 시점을 알게 될 것입니다. 그러나 나는 현재의 사건에서 그것을 어떻게하는지 확신하지 못한다. – Random