사전 잠금 계획을 신중하게 측정하면 SQL 또는 MySQL 데이터베이스가 읽기 전용 상태로 변환되면 의도한 대로 작동하고 지정된 사용자 그룹이 계속 액세스할 수 있도록 보장됩니다. 또한 이러한 예측은 향후 업데이트나 변경이 필요한 경우 데이터베이스를 안전하게 잠금 해제할 수 있음을 보장합니다.
DBA가 공감할 수 있도록 데이터베이스를 읽기 전용으로 설정하는 데는 상당한 매력이 있습니다. 마치 데이터베이스가 성숙기에 도달하여 지속적인 업데이트에 대한 부담 없이 세계로 나아갈 준비가 된 것과 같습니다.
물론, 일시적이든 영구적이든 데이터베이스를 읽기 전용으로 설정하는 이유는 데이터베이스 자체만큼 다양합니다. 다음은 사용자가 콘텐츠에 액세스할 수 있도록 허용하면서 SQL 또는 MySQL 데이터베이스의 콘텐츠를 잠그는 방법에 대한 포괄적인 개요입니다.
Atif Shehzad가 MSSQLTips 사이트에서 기민하게 지적했듯이 데이터베이스를 잠그기 전에 최고의 성능을 보장하기 위해 데이터베이스를 미세 조정하는 것이 중요합니다. 예를 들어, 읽기 전용 데이터베이스에서는 통계를 업데이트할 수 없으며 인덱스를 생성하거나 조각 모음할 수도 없습니다. 또한 데이터베이스 개체에 확장 속성을 추가하거나 해당 권한을 편집하거나 사용자를 추가/제거할 수 없습니다.
Shehzad는 데이터베이스를 읽기 전용으로 변환하기 전에 실행할 세심한 8단계 사전 잠금 스크립트를 제공합니다. 체크리스트에는 트랜잭션 로그 백업 생성부터 권한 수정 및 통계 업데이트까지 모든 것이 포함됩니다.
8단계 사전 잠금 체크리스트를 통해 데이터베이스가 읽기 전용으로 전환되기 전에 최적화되고 백업됩니다. 출처: MSSQLTips.
데이터베이스가 최적화되고 백업되면 ALTER DATABASE [데이터베이스 이름] SET READ_ONLY 명령이나 시스템 저장 프로시저 sp_dboption(최신 버전의 SQL Server에서 저장 프로시저가 제거되었기 때문에 전자가 권장됨)을 사용하세요. 또는 SSMS에서 데이터베이스를 마우스 오른쪽 버튼으로 클릭하고 속성 > 옵션을 선택한 다음 데이터베이스 읽기 전용 상태를 True. SSMS에서 데이터베이스 아이콘과 이름이 변경되어 읽기 전용 상태를 나타냅니다.
MySQL 데이터베이스를 읽기 전용으로 구성하는 주요 이유는 백업 프로세스 중 데이터 손실을 방지하기 위한 것입니다. MySQL 문서 라이브러리는 복제 설정에서 마스터 및 슬레이브 서버를 백업하고 전역 읽기 잠금을 활용하고 read_only 시스템 변수를 조작하기 위한 포괄적인 지침을 제공합니다.
원천
복제 설정 지침에서는 마스터 서버(M1), 슬레이브 서버(S1) 및 클라이언트(M1에 연결된 C1, S1에 연결된 C2)를 구상합니다. 마스터를 읽기 전용 모드로 쉽게 전환하고 백업 완료 시 마스터를 정상 작동으로 복원하는 명령은 아래에 설명되어 있습니다. (특정 버전에서는 "ENABLED"가 "1"과 동의어이고 "DISABLED"가 "0"과 동일하다는 점에 유의하세요.)
예비 명령은 데이터베이스를 읽기 전용으로 전환하고 후속 명령은 백업이 완료되면 데이터베이스를 일반 상태로 복원합니다. 출처: MySQL 문서 라이브러리.
읽기 전용 상태에서는 데이터베이스를 쿼리할 수 있지만 수정할 수는 없습니다. StackOverflow의 2013년 8월 23일자 게시물에서는 특정 사용자에 대한 DML 권한을 취소했다가 복원하는 방법을 설명합니다. 이 전략은 전체 데이터베이스의 성능에 영향을 줄 가능성이 적습니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3