Removendo cláusulas DEFINER de dumps do MySQL
Os dumps do MySQL podem conter cláusulas DEFINER, que especificam o usuário e o host que criaram os objetos de banco de dados que estão sendo despejados . Essas cláusulas podem representar problemas de segurança ou causar conflitos ao importar o dump para um ambiente diferente.
Para mitigar esses problemas, geralmente é desejável remover as cláusulas DEFINER do arquivo de dump. Embora não seja possível evitar que DEFINERs sejam adicionados ao dump durante o processo de exportação, é viável removê-los posteriormente.
Técnicas de remoção
Depois de gerar o dump, vários métodos podem ser empregados para remover cláusulas DEFINER:
perl -p -i.bak -e "s/DEFINER=\`\w.*\`@\`\d[0-3].*[0-3]\`//g" mydatabase.sql
mysqldump ... | sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' > triggers_backup.sql
Ao aplicar um desses métodos, você pode efetivamente remover cláusulas DEFINER de seus dumps MySQL e melhorar a segurança e portabilidade de seus backups de banco de dados.
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