"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Proteja seus dados: como criar cópias invioláveis ​​de bancos de dados SQL e MySQL

Proteja seus dados: como criar cópias invioláveis ​​de bancos de dados SQL e MySQL

Publicado em 2024-11-08
Navegar:463

Protect Your Data: How to Create Unhackable SQL and MySQL Database Copies

Uma medida prudente de planejamento pré-bloqueio garante que um banco de dados SQL ou MySQL, uma vez convertido para o status somente leitura, funcione conforme pretendido e permaneça acessível ao grupo designado de usuários. Essa previsão também garante que o banco de dados possa ser desbloqueado com segurança quando e se precisar de atualizações ou alterações no futuro.

Há um certo apelo em definir um banco de dados como somente leitura que ressoe com os DBAs. É como se a base de dados tivesse atingido a maturidade e estivesse pronta para se aventurar pelo mundo, livre da necessidade de atualizações constantes.

É claro que os motivos para definir um banco de dados como somente leitura - seja temporária ou permanentemente - são tão diversos quanto os próprios bancos de dados. Aqui está uma visão geral abrangente dos métodos para bloquear o conteúdo de um banco de dados SQL ou MySQL enquanto permite que os usuários acessem seu conteúdo.

Como Atif Shehzad aponta astutamente no site MSSQLTips , antes de bloquear o banco de dados, é essencial ajustá-lo para garantir o desempenho máximo. Por exemplo, você não pode atualizar estatísticas em um banco de dados somente leitura, nem criar ou desfragmentar índices. Além disso, você não pode adicionar propriedades estendidas aos objetos do banco de dados, editar suas permissões ou adicionar/remover usuários.

Shehzad fornece um script de pré-bloqueio meticuloso de oito etapas para ser executado antes de converter um banco de dados para somente leitura. A lista de verificação abrange tudo, desde a criação de um backup do log de transações até a modificação de permissões e atualização de estatísticas.

Uma lista de verificação de pré-bloqueio de oito etapas garante que seu banco de dados seja otimizado e tenha backup antes de ser alterado para somente leitura. Fonte: MSSQLTips.

Depois que o banco de dados estiver otimizado e com backup, use o comando ALTER DATABASE [nome do banco de dados] SET READ_ONLY ou o procedimento armazenado do sistema sp_dboption (o primeiro é recomendado porque o procedimento armazenado foi removido das versões recentes do SQL Server). Como alternativa, você pode clicar com o botão direito do mouse no banco de dados no SSMS, escolher Propriedades > Opções e definir o estado Somente leitura do banco de dados como True. O ícone e o nome do banco de dados serão alterados no SSMS para indicar seu estado somente leitura.

Transformando um banco de dados MySQL em um estado somente leitura — e revertendo o processo

Uma das principais motivações para configurar um banco de dados MySQL como somente leitura é evitar a perda de dados durante o processo de backup. A Biblioteca de Documentação MySQL fornece diretrizes abrangentes para fazer backup de servidores mestre e escravos em uma configuração de replicação, utilizando um bloqueio de leitura global e manipulando a variável de sistema read_only.

Fonte

As diretrizes de configuração de replicação prevêem um servidor mestre (M1), um servidor escravo (S1) e clientes (C1 conectado a M1 e C2 conectado a S1). Os comandos que facilitam a transição do mestre para o modo somente leitura e restauram sua operação normal após a conclusão do backup são descritos abaixo. (Observe que em certas versões, “ATIVADO” é sinônimo de “1” e “DESATIVADO” é equivalente a “0”.)

Os comandos preliminares alternam o banco de dados para somente leitura e os comandos subsequentes o restauram ao seu estado normal após a conclusão do backup. Fonte: Biblioteca de Documentação MySQL.

Em seu estado somente leitura, o banco de dados pode ser consultado, mas não modificado. Uma postagem datada de 23 de agosto de 2013 no StackOverflow explica como revogar e restabelecer privilégios DML para usuários específicos, uma estratégia com menor probabilidade de impactar o desempenho de todo o banco de dados.

Declaração de lançamento Este artigo está reproduzido em: https://dev.to/jackwilltech/protect-your-data-how-to-create-unhackable-sql-and-mysql-database-copies-lf1?1 Se houver alguma violação, por favor entre em contato com study_golang@163 .comdelete
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3