Tool SQL Server um Zugriffe auf Datenbanken zu sehen/zu überprüfen
Guten Tag,
wir haben einen SQL Server an dem ungefähr 25 Datenbanken angehängt sind! Nun suche ich ein Tool mit dme es mir möglich ist ganz genau zu sehen auf welcher Datenbank gerade am meisten Zugriffe statt finden bzw. auf welcher Datenbank am meisten gearbeiotet wird! Gibt es denn solch ein Tool?!
Danke für eure Antworten!!
MFG
Michael Broda
wir haben einen SQL Server an dem ungefähr 25 Datenbanken angehängt sind! Nun suche ich ein Tool mit dme es mir möglich ist ganz genau zu sehen auf welcher Datenbank gerade am meisten Zugriffe statt finden bzw. auf welcher Datenbank am meisten gearbeiotet wird! Gibt es denn solch ein Tool?!
Danke für eure Antworten!!
MFG
Michael Broda
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 46452
Url: https://administrator.de/contentid/46452
Ausgedruckt am: 22.11.2024 um 17:11 Uhr
4 Kommentare
Neuester Kommentar
Hallo Michael,
das gibts nicht nur, das wird sogar mit SQL Server mitgeliefert. Im Enterprise Manager unter Verwaltung / Aktuelle Aktivität kann man das sehen.
Wenn die Aktivitäten mitprotokolliert werden sollen, kann man den (ebenfalls mitgelieferten) Profiler verwenden bzw. sich dieses Protokoll in eine Datei schreiben lassen.
Gruß, Mad Max
das gibts nicht nur, das wird sogar mit SQL Server mitgeliefert. Im Enterprise Manager unter Verwaltung / Aktuelle Aktivität kann man das sehen.
Wenn die Aktivitäten mitprotokolliert werden sollen, kann man den (ebenfalls mitgelieferten) Profiler verwenden bzw. sich dieses Protokoll in eine Datei schreiben lassen.
Gruß, Mad Max
Hallo Michael,
DATEV verwendet soviel ich weiß die MSDE, da ist dann der Enterprise Manager nicht dabei. Bei Microsoft gibt es für die Administration von SQL Server 2000 und 2005 aber ein kostenloses Programm, "Microsoft SQL Server Management Studio Express", damit kann man auch die Aktivität überwachen. Hier heißt es dann Aktivitätsmonitor und ist auch wieder unter Verwaltung zu finden.
Microsoft SQL Server Management Studio Express findest Du bei MS unter:
http://www.microsoft.com/downloads/details.aspx?FamilyID=c243a5ae-4bd1- ...
Gruß, Mad Max
Kleiner Nachtrag:
Wenn man die Aktivität im Enterprise Manager abruft, wird auch nur ein simples SELECT auf eine Systemtabelle durchgeführt. Wenn Du also ein Programm hast, mit dem Du SQL-Befehle losschicken kannst (z.B. osql, bei der MSDE dabei oder MS Query, bei Office dabei), dann ist hier der passende Befehl:
select [Process ID] = p.spid,
[User] = case when p.spid > 6
then convert(sysname, ISNULL(suser_sname(p.sid), rtrim(p.nt_domain) + '\' + rtrim(p.nt_username)))
else 'system'
end,
[Database] = case when p.dbid = 0
then 'no database context'
else db_name(p.dbid)
end,
[Status] = p.status,
[Open Transactions] = p.open_tran,
[Command] = p.cmd,
[Application] = p.program_name,
[Wait Time] = p.waittime,
[Wait Type] = case when p.waittype = 0
then 'not waiting'
else p.lastwaittype
end,
[Wait Resource] = case when p.waittype = 0
then ''
else p.waitresource
end,
[CPU] = p.cpu,
[Physical IO] = p.physical_io,
[Memory Usage] = p.memusage,
[Login Time] = p.login_time,
[Last Batch] = p.last_batch,
[Host] = p.hostname,
[Net Library] = p.net_library,
[Net Address] = p.net_address,
[Blocked By] = p.blocked,
[Blocking] = 0,
[Execution Context ID] = p.ecid
from master.dbo.sysprocesses p with (NOLOCK)
DATEV verwendet soviel ich weiß die MSDE, da ist dann der Enterprise Manager nicht dabei. Bei Microsoft gibt es für die Administration von SQL Server 2000 und 2005 aber ein kostenloses Programm, "Microsoft SQL Server Management Studio Express", damit kann man auch die Aktivität überwachen. Hier heißt es dann Aktivitätsmonitor und ist auch wieder unter Verwaltung zu finden.
Microsoft SQL Server Management Studio Express findest Du bei MS unter:
http://www.microsoft.com/downloads/details.aspx?FamilyID=c243a5ae-4bd1- ...
Gruß, Mad Max
Kleiner Nachtrag:
Wenn man die Aktivität im Enterprise Manager abruft, wird auch nur ein simples SELECT auf eine Systemtabelle durchgeführt. Wenn Du also ein Programm hast, mit dem Du SQL-Befehle losschicken kannst (z.B. osql, bei der MSDE dabei oder MS Query, bei Office dabei), dann ist hier der passende Befehl:
select [Process ID] = p.spid,
[User] = case when p.spid > 6
then convert(sysname, ISNULL(suser_sname(p.sid), rtrim(p.nt_domain) + '\' + rtrim(p.nt_username)))
else 'system'
end,
[Database] = case when p.dbid = 0
then 'no database context'
else db_name(p.dbid)
end,
[Status] = p.status,
[Open Transactions] = p.open_tran,
[Command] = p.cmd,
[Application] = p.program_name,
[Wait Time] = p.waittime,
[Wait Type] = case when p.waittype = 0
then 'not waiting'
else p.lastwaittype
end,
[Wait Resource] = case when p.waittype = 0
then ''
else p.waitresource
end,
[CPU] = p.cpu,
[Physical IO] = p.physical_io,
[Memory Usage] = p.memusage,
[Login Time] = p.login_time,
[Last Batch] = p.last_batch,
[Host] = p.hostname,
[Net Library] = p.net_library,
[Net Address] = p.net_address,
[Blocked By] = p.blocked,
[Blocking] = 0,
[Execution Context ID] = p.ecid
from master.dbo.sysprocesses p with (NOLOCK)