chrisLB Geschrieben 11. März 2008 Teilen Geschrieben 11. März 2008 Hallo Leute, für ein kleines Datenbankmonitoringprogramm, welches bei uns in ein größeres Programm eingebunden werden soll, soll ich eine Recherche machen (für Oracle und MSSQL): Also interessant wären im Allgemeinen so Sachen, Übersicht der Systemtabellen und Variablen bzw. im speziellen möchte ich halt wissen, wo ich Informationen auslesen kann, sowas wie gesamter Speicherplatz der Datenbank/freier Speicherplatz, Fragementierungszustand, gesamte Anzahl an Zeilen, Anzahl Threads ..eventuelle sowas wie CPU Nutzung und Arbeitspeicherbeanspruchung, falls sowas möglich ist. Halt alle Informationen, die mir kurz und knapp einen mometanen "Gesundheitszustand der Datenbank angeben" bzw. nehme auch gerne Vorschläge an, was noch sinnvoll ist zu beobachten. Vielen Dank schon Mal, Mfg Chris Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
dr.dimitri Geschrieben 11. März 2008 Teilen Geschrieben 11. März 2008 Übersicht der Systemtabellen Was meinst Du mit Übersicht? Oracle hat je nach version hunderte bzw. tausende Systemtabellen und Systemviews. Sollen die nur angezeigt werden das sie da sind oder was genau? und Variablen select * from v$parameter Fragementierungszustand Lokal organisiere Tablespaces fragmentieren nicht. Solltet ihr noch Datadictionary managed Tablespaces verwenden, dann wär es an der Zeit diese zu migrieren. gesamte Anzahl an Zeilen Ist immer abhängig davon, wann die DB das letzte mal mittels dem DBMS_STATS Package analysiert wurde. Die Werte stehen dann in der ALL_TABLES View. und Arbeitspeicherbeanspruchung SELECT * FROM V$SGASTAT Ansonsten sind auch Die Views V$SESSION,V$SYSSTAT,V$STATNAME,V$SESSTAT deine Freunde. Infos darüber findest Du in der Oracle Doku. Dim Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
chrisLB Geschrieben 11. März 2008 Autor Teilen Geschrieben 11. März 2008 Erstmal herzlichen Dank für die ausführliche Antwort: Was meinst Du mit Übersicht? Oracle hat je nach version hunderte bzw. tausende Systemtabellen und Systemviews. Sollen die nur angezeigt werden das sie da sind oder was genau? Das meinte ich unabhängig von der Anwendung, sondern so allgemein als Reference im Netz...damit ich halt selber nach den passenden Views usw suchen kann Ist immer abhängig davon, wann die DB das letzte mal mittels dem DBMS_STATS Package analysiert wurde. Die Werte stehen dann in der ALL_TABLES View. Wie macht man das mit dem DBMS_STATS Package? Ist das nicht sehr Rechenaufwendig, ich würde dies gerne relativ häufig/genau auslesen wollen Ansonsten sind auch Die Views V$SESSION,V$SYSSTAT,V$STATNAME,V$SESSTAT deine Freunde. Infos darüber findest Du in der Oracle Doku. Dim Die Schau ich mir mal an, jemand noch ähnliche nützliche Tipps für MSSQL? Grüße Chris Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
dr.dimitri Geschrieben 11. März 2008 Teilen Geschrieben 11. März 2008 Das meinte ich unabhängig von der Anwendung, sondern so allgemein als Reference im Netz...damit ich halt selber nach den passenden Views usw suchen kann Da wär natürlich die Oracle Doku im allgemeinen und der Performance Tuning Guide im speziellen zu nennen. Allerdings solltest Du dir schon bewußt sein, dass Du einiges an Detailwissen über die Datenbank brauchst (und nicht nur allgemein, sondern auch speziell auf deine Version bezogen) um zum einen so ein Tool zu entwickeln (das dann auch wirklich anzeigt was es soll) und zum anderen um die Zahlen auch zu interpretieren. Beachte auch, dass das Auslesen diverse Performanceviews (Stichwort ADDM) lizenzpflichtig ist. Ist das nicht sehr Rechenaufwendig, ich würde dies gerne relativ häufig/genau auslesen wollen Zumindest eine Oracle-DB ist so gebaut möglichst performant Queries und DML Statements zu verarbeiten und nicht um möglichst genau anzuzeigen wieviele Datensätze in den Tabellen vorhanden sind. DBMS_STATS ist für den Optimizer wichtig, da ehierdurch weiß wie die Datenverteilung aussieht, welche Kardinalitäten in den Spalten vorhanden sind etc. Um die Laufzeiten so gering wie möglich zu halten, kann man die entsprechenden Proceduren auch anweisen nur einen kleinen Teil der Tabellen/Indieces zu prüfen und den rest dann hochzurechnen. Anders ausgedrück: Diese Anforderung wirst Du so nicht 100%ig implementieren können. Die Ergebnisse eines Statistiklaufs kannst Du natürlich sooft auslesen wie Du willst, die gehen ja nicht verloren. Dim Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
chrisLB Geschrieben 12. März 2008 Autor Teilen Geschrieben 12. März 2008 Vielen Dank für deine netten und informativen Antworten. Ich soll ja das Tool erst ein mal nicht schreiben, sondern nur die Datenbankseitigengrundlagen dafür raussuchen, bzw. rausfinden, was alles möglich wäre. Wie finde ich heraus, welche Views Zusatzlizenzen erforden? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
dr.dimitri Geschrieben 12. März 2008 Teilen Geschrieben 12. März 2008 Hi, hier findest ein paar infos zu den Lizenzen: Oracle 10g Enterprise Manager Packages usage and licensing Dim Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.