MySQL 복제, 해커가 기본 데이터베이스를 삭제하는 것을 방지하고 삭제 내용이 복제되는 것을 방지합니다.

MySQL 복제, 해커가 기본 데이터베이스를 삭제하는 것을 방지하고 삭제 내용이 복제되는 것을 방지합니다.

마스터/슬레이브 MySQL 서버를 설정했습니다. 제가 우려하는 점은 마스터 데이터베이스가 해킹되어 해커가 테이블을 삭제하거나 데이터베이스를 완전히 삭제하면 모든 변경 사항이 슬레이브에도 전파되어 슬레이브에서도 삭제된다는 것입니다.

지연을 사용하지 않고 해커가 내 슬레이브 데이터베이스를 파괴하는 것을 방지하는 좋은 방법은 무엇입니까?

답변1

MySQL 마스터/슬레이브 설정은 웹 애플리케이션이나 웹 사이트에 대한 내결함성 백엔드 데이터베이스를 생성하려는 경우에 적합합니다.

마스터 데이터베이스에 오류가 발생하면 슬레이브를 사용하도록 애플리케이션을 전환할 수 있습니다. 따라서 이러한 접근 방식은 마스터를 호스팅하는 서버에 하드웨어 또는 소프트웨어 오류가 있는 경우에만 재해 복구 솔루션으로 작동할 수 있습니다.

그러나 언급한 것처럼 해커가 마스터 데이터베이스에서 데이터를 삭제하면 변경 사항이 슬레이브에 의해 빠르게 선택됩니다.

안전을 위해 슬레이브에 데이터베이스의 자동 백업을 생성하는 것이 좋습니다. 다음과 같은 도구를 사용할 수 있습니다.자동 mysql백업.

백업이 완료되면 슬레이브 로그에서 데이터베이스를 원래 상태로 복원할 수 있습니다.

자신만의 사용자 정의 백업 도구를 디자인하려면 가장 최근 백업을 식별할 수 있도록 백업된 데이터베이스의 타임스탬프를 포함해야 합니다.

또한 애플리케이션을 위한 안전하고 내결함성이 있는 데이터베이스 클러스터를 구축할 시간이 없다고 생각되면 ApsaraDB와 같은 자체 호스팅 MySQL 솔루션을 선택하는 것이 좋습니다. 이러한 종류의 솔루션을 사용하면 데이터베이스가 DDoS, SQL 주입 및 무차별 대입 공격으로부터 보호됩니다.

이게 도움이 되길 바란다.

답변2

애플리케이션에서 과도한 권한을 제거하세요. 해당 권한을 안전하게 제거할 수 없으면 'DELETE FROM table'로부터 보호되지 않을 수 있습니다.

따라서 특정 시점의 스냅샷(mysqldump --single-transaction / lvm / xtrabackup)으로 백업을 만들고 바이너리 로그 위치를 저장하세요. 바이너리 로그 파일을 저장하고(마스터/릴레이 로그가 다름을 기록하는 기록에 매핑) binlog가 제거되지 않았는지 확인합니다.

특정 지점까지 바이너리 로그를 적용하여 복구 절차를 테스트하여 사용해야 할 때 올바른 정보와 절차를 얻었는지 확인하세요.

관련 정보