Existe-t-il un moyen de consulter l'historique complet des événements de croissance et de réduction des dernières semaines/mois sur SQL Server 2014? (De nouvelles instances à prendre en charge, ont remarqué du système de billetterie qu'elles ont un historique précédent de "journal de lecteur plein", donc je voudrais creuser la cause racine avant que cela ne se reproduise.)
Cela a été utile: Identifier les événements de croissance de fichiers . Est apparu avec la requête ci-dessous, mais elle n'affiche aucun des événements de réduction de journal "manuels", juste les événements "auto". Suis-je en train de faire ça de la mauvaise façon, n'importe quel autre endroit pour chercher des informations passées?
select
te.name as event_name,
tr.DatabaseName,
tr.FileName,
tr.IntegerData,
tr.IntegerData2,
tr.LoginName,
tr.StartTime,
tr.EndTime
--select *
from
sys.fn_trace_gettable(convert(nvarchar(255),(select value from sys.fn_trace_getinfo(0) where property=2)), 0) tr
inner join sys.trace_events te on tr.EventClass = te.trace_event_id
where
tr.EventClass in (93, 95) --can't identify any other EventClass to add here
order by
EndTime desc;
Existe-t-il un moyen de consulter l'historique complet des événements de croissance et de réduction des dernières semaines/mois sur SQL Server 2014
Oui, il existe un moyen, ou devrais-je dire différentes façons d'enregistrer les données collectées à partir de la trace par défaut, comme expliqué ici Collecte des informations dans la trace par défaut
- Nous pourrions interroger les fichiers de trace par défaut et enregistrer les valeurs agrégées
- Nous pourrions obtenir la définition de la trace par défaut et créer un ensemble de collections, qui peut être utilisé avec Management Data Warehouse, qui est intégré à SQL Server.
- Nous pourrions obtenir la définition de la trace par défaut et créer une trace distante à partir d'un autre serveur et enregistrer les données dans une table de base de données
- Nous pourrions utiliser un script robocopy pour copier les fichiers de trace de notre serveur vers un autre dossier ou une machine distante, ce qui laissera les fichiers sur le disque plus longtemps, nous donnant la possibilité de les analyser
Est apparu avec la requête ci-dessous, mais elle n'affiche aucun des événements de réduction de journal "manuels", juste les événements "auto". Est-ce que je fais cela de la mauvaise façon, n'importe quel autre endroit pour rechercher des informations passées? Pour capturer les événements de rétrécissement manuel, j'utilise la requête comme ci-dessous:
SELECT
TextData,
HostName,
ApplicationName,
LoginName,
StartTime
FROM
[fn_trace_gettable]('C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Log\log_75.trc', DEFAULT)
WHERE TextData LIKE '%SHRINKFILE%'; ----- Location of default trace will be different ,so kindly check that accordingly
La raison probable de votre requête n'affiche pas les événements de croissance ou de réduction manuels car vous utilisez des événements tels que (93, 95) qui sont destinés aux événements de croissance automatique
Existe-t-il un moyen de consulter l'historique complet des événements de croissance et de réduction des dernières semaines/mois sur SQL Server 2014?
Il existe un moyen simple d'obtenir des informations sur les événements de croissance automatique des fichiers de données/journaux et de réduction automatique à partir des rapports de base de données. Le rapport récupère les données de la trace par défaut. Je ne sais pas dans quelle mesure votre rapport serait récent et dépend du moment où la trace par défaut a été reconduite. La taille par défaut est de 20 Mo, après quoi elle sera restaurée et notez également qu'après le redémarrage de SQL Server, la trace sera restaurée
Connectez-vous à l'instance SQL Server, puis cliquez avec le bouton droit sur la base de données, puis sélectionnez les rapports, puis les rapports standard, puis cliquez sur l'utilisation du disque.
Dans le rapport qui vient chercher Data/log file autogrowt auto shrink events
et développez le + sign
c'est juste en dessous du rapport circulaire d'utilisation. Le rapport ressemblerait à ci-dessous.
Dans mon cas, il a uniquement signalé un événement de croissance automatique car je n'ai pas de rétrécissement automatique ni aucune activité de rétrécissement en cours, ce qui, je suppose, est tout à fait mauvais.