michbro
Goto Top

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

Content-ID: 46452

Url: https://administrator.de/contentid/46452

Ausgedruckt am: 22.11.2024 um 17:11 Uhr

MadMax
MadMax 11.12.2006 um 09:51:25 Uhr
Goto Top
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
MichBro
MichBro 11.12.2006 um 10:06:16 Uhr
Goto Top
Hallo,

wie benutzen den DATEV SQL Server und da kann ich leider den Eintrag "Verwaltung" nicht finden face-sad !!!

Vielleicht noch ne andere Idee?! face-smile Danke

MFG
Michael
MadMax
MadMax 11.12.2006 um 12:29:46 Uhr
Goto Top
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)
MichBro
MichBro 11.12.2006 um 14:13:25 Uhr
Goto Top
Hallo Max,

gneau das habe ich gesucht!!!

Vielen Danke!!!

MFG

Michael