Historico de banco
21/02/2016
0
Mario Holanda
Posts
21/02/2016
William
Se for isso já vi profissionais versionarem o script .sql, usando ferramentas como Git.
22/02/2016
Marcos P
Exatamente o que você quer disser com "histórico no banco de dados" ?
22/02/2016
Mario Holanda
Não entendi a questão de usar o Git William.
Marcos P, historico de operações do banco: insert, delete, update, select(creio que não tanto).
22/02/2016
William
Esse caso são é para operações que envolvem alterações na estrutura do banco de dados, adiciona um campo, procedure ou trigger e extrai um script .sql com a estrutura, dessa maneira vc comita identificando as modificações.
Nada relacionado aos dados que estão nas tabelas!
22/02/2016
Marcos P
Se sua necessidade é logar as operações de manipulação de dados ( insert / delete / update ), crie uma tabela com a mesma estrutura básica ( sem chaves, indices e outras constraints ) da tabela a ser controlada. Depois crie triggeres que, a partir da operação na tabela original, registrem os ajustes de dados nas tabelas secundária. Repita o processo para cada tabela em que seja necessário registro dessas alterações.
Existem outras maneiras de fazer isso, mas essa, na minha opinião, acaba sendo a mais prática.
A questão de uso do GIT, tem a ver com o controle do script sql de criação do banco de dados ( ou qualquer outro script sql associado ). Você pode usar o versionador para, gerando scripts a cada alteração na ESTRUTURA do banco, controlar os ajustes realizados no esquema dos objetos.
Acho que é isso...
22/02/2016
Mario Holanda
22/02/2016
Mariana Carvalho
22/02/2016
Marcos P
Com ele é possível monitorar TODAS as transações submetidas ao servidor de banco de dados.
Também é possível criar diversos tipos de filtro, para restringir a análise à determinado usuário, processo, objeto, tabela, etc, etc, etc...
Aplica-se no tunning, auditoria e suporte ao funcionamento do banco de dados em ambiente de produção.
Como a necessidade descrita no post é de log, o Profiler consegue detectar as operações de atualização, mas não consegue armazená-las em uma tabela específica de log.
Ou seja, não serve para a necessidade do Mario.
22/02/2016
Jothaz
Se quer gerar um "trilha de auditoria" do que esta acontecendo no banco de dados o caminho é fazer algo na mão mesmo que pode ser:
1-Triggers nas tabela para principais operações.
2-Via aplicação de forma que qualquer chamada ao banco de dados seja gravada em um tabela especifica de log.
3-Usar alguma ferramenta de log: Log$net ou Nlog se não me engano o Nlog grava até em banco de dados.
São soluções braçais e trabalhosa, mas é um forma de você garantir que todas as operações sejam armazenadas.
Sei que nas versões Enterprise do SQL Server 2008 R2 e 2012 existe uma opção de auditoria, mas nunca usei, pois normalmente nas empresas em que presto consultoria tem área de banco de dados. Mas pesquise sobre auditoria no SQL Server 2008 ou 2012 que irá acha conteúdo.
27/02/2016
Alan Mario
Clique aqui para fazer login e interagir na Comunidade :)