Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Boa prática para dividir dados em vários bancos de dados?


"Boa prática" é uma daquelas frases que nos permite fazer nossos preconceitos parecerem mais importantes do que realmente são...

Em geral, você deseja armazenar coisas juntas que pertencem umas às outras. Se você tem um único sistema de informação, que administra tudo para uma empresa, e as entidades que você gerencia estão relacionadas umas às outras - os clientes têm pedidos, os pedidos têm vendedores e produtos - você pode argumentar que eles pertencem um ao outro. Se, por outro lado, você perceber que tem "ilhas" de tabelas que não estão realmente vinculadas a outras tabelas, talvez elas não pertençam umas às outras.

Do ponto de vista da manutenção, gerenciar mais bancos de dados significa mais backups, mais rotinas de manutenção e mais perfis de segurança para gerenciar.

Do ponto de vista da legibilidade, procurar em diferentes bancos de dados para encontrar a tabela em que você está interessado é provavelmente uma coisa ruim - por exemplo, onde há uma tabela de junção de muitos para muitos entre "clientes" e "funcionários" - por exemplo, equipe de vendas - onde fica essa mesa? No banco de dados "cliente" ou "funcionário"?

Do ponto de vista da confiabilidade, não tenho certeza se você pode impor restrições de chave estrangeira nos bancos de dados.

Eu realmente não consigo pensar em nenhum benefício de fazer isso - então eu diria que é uma má ideia.