Le journal d'activité de base de données MS SQL Server
J'ai une base de données avec plus d'une centaine de tableaux. Je suis en permanence l'ajout de colonnes dans les tables existantes (si nécessaire) et j'ai aussi ajouté quelques nouvelles tables.
Maintenant, je veux vérifier ce que les modifications que j'ai faites au cours des 3 derniers mois. Est-il un journal d'activité dans MS SQL Server 2012 pour cette base de données spécifique pour le suivi des modifications.
- SQL de Contrôle à la Source?
- comment?
- Ce serait mieux posté sur dba.stackexchange.com
Vous devez vous connecter pour publier un commentaire.
Peut-être cela peut vous obtenir à moitié.
sys.objects
a créer et de modifier les dates, mais malheureusementsys.columns
ne le fait pas. Cependant, la dernière des colonnes ajoutées auront plus d'column_ids. Je ne sais pas que vous seriez en mesure de choisir colonnes supprimées facilement. Notez que les modifications autres que des modifications de colonne peut être traduit par la modification de la date.Pour faire cette vérification plus facile dans le futur, vous pouvez créer un déclencheur DDL qui va enregistrer toutes les modifications de schéma d'une table ou d'un contrôle de source si vous utilisez quelque chose comme un SSDT projet de données pour gérer vos modifications.
Dès maintenant,vos options sont limitées ,aller de l'avant, vous pouvez essayer ci-dessous et également vérifier pour voir si elles vous aident à vous, maintenant..
1.Si vous avez activé la Vérification,vous pouvez suivre les changements
Pour vérifier si vous avez activé la Vérification,Vous pouvez utiliser la requête ci-dessous..
Si vous n'avez pas activé la Vérification,vous pouvez l'activer à la suite de cette :Une Introduction à SQL Server Audit..je ne recommanderais pas l'activation de l'Audit ,à moins que vous avez besoin pour capturer d'autres que ce qui est mentionné dans votre question
2.Trace par défaut capte aussi les tables créées ,mais il utilise, rouler sur des fichiers mécanisme pour remplacer les derniers fichiers lorsque l'espace est complet,donc vous pouvez être hors de la chance(car vous vous demandez quels sont les trois mois),mais essayez ceci:Quel événement de l'information puis-je obtenir par défaut de SQL Server? à savoir à savoir toutes les choses,qui sont proposés par défaut trace
Je voudrais aller avec cette option et essayez de sauvegarder ces fichiers ,selon le moment où ils cumulatif(puisque vous avez seulement besoin de vérifier les changements de table)
3.Enfin, Une dernière option consiste à interroger Tlog
ci-dessus Tlog option ne fonctionne que si vous avez Tlog sauvegardes depuis plus de trois mois et aussi vous avez besoin pour les restaurer
De Vérifier toutes les activités dans le temps passé, vous pouvez travailler avec MSSQL d'Audit. Ses le meilleur moyen de suivre tous les changements, à tout moment. Veuillez Vérifier
https://msdn.microsoft.com/en-us/library/cc280386.aspx
Vous pouvez exécuter un rapport à partir du menu clic-droit sur la DB:
Il y a plusieurs rapports qui pourraient vous intéresser dans cette liste déroulante. Ou vous pourriez peut-être créer un rapport personnalisé avec les informations que vous avez besoin.
Mon Schéma de rapport uniquement remonte à 9/3/2016, mais j'ai+ de 1000 tables avec+ de 60 colonnes avec de nombreuses mises à jour quotidiennement. Le vôtre peut remonter plus loin.
Vous pouvez utiliser un Déclencheur DDL:
Si vous avez des sauvegardes de 3 mois, dire sur la bande, vous pouvez restaurer une sauvegarde sous un autre nom ou à un autre serveur, puis exécuter un schéma de comparaison via l'outil tiers - Visual Studio, Devart comparaison de schémas, etc.
Sinon préventivement configurer les mécanismes avant de vous en avez besoin, comme décrit par Gameiswar et d'autres est le seul moyen.
Prendre des instantanés des définitions de métadonnées via l'option "Générer des Scripts..." option Tâches à partir de SQL Server Management Studio.
Magasin le script généré les fichiers dans un dossier dont le nom fait référence à la date actuelle. Une fois que cela a été fait plus d'une fois, WinDiff peut être utilisé pour mettre en évidence les modifications de base de données faite entre deux clichés. Choisissez l'option "Générer des Scripts" options avec soin et de façon constante, de sorte que les comparaisons sont plus bénéfiques.
Cette requête va donner le dernier date de création et modifié de Procédures Stockées: