Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

IBM DB2 Monitor per JDBC auslesen? Und ALTER TABLESPACE?

Informationen & SEO Tipps zum Einsatz und Verwendung von Blog-, Wiki und Content Management Systemen wie Drupal, Typo3, Wordpress, Reddot, Joomla, Moin Moin, phpWiki sowie Shop-Systemen wie z.B. XT-Commerce, Magento, ePages, Intershop, 1&1 Shops.
Neues Thema Antworten
Andreas I.
PostRank 9
PostRank 9
Beiträge: 1464
Registriert: 18.03.2006, 14:36
Wohnort: Hamburg

Beitrag von Andreas I. » 03.02.2009, 22:57

Hallo, inzwischen habe ich mich erfolgreich mit der Datenbank verbunden: https://www.abakus-internet-marketing.d ... 67910.html

...Nun will ich aber auch Snapshot-Monitorelemente per Java/JDBC(?) auslesen und ALTER TABLESPACE Kommandos absetzen.

Per Konsole geht das ja ganz prima, aber über JDBC irgendwie nicht so wirklich. Die Befehle zum auslesen der Snapshot-Monitorelemente und zum verändern des Tablespace scheinen wohl irgendwie neben den SQL-Befehlen zu existieren und sich nicht so einfach über JDBC versenden lassen(?)

Weiß jemand, wie das gemacht wird?

Anzeige von ABAKUS

von Anzeige von ABAKUS »

SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


everflux
PostRank 8
PostRank 8
Beiträge: 939
Registriert: 01.05.2006, 17:15

Beitrag von everflux » 04.02.2009, 13:29

Was heißt denn, geht nicht so wirklich? Gibts ne Fehlermeldung?
Zeig mal den Java Code...
https://everflux.de/ blogging about life, programming, seo and the net

Andreas I.
PostRank 9
PostRank 9
Beiträge: 1464
Registriert: 18.03.2006, 14:36
Wohnort: Hamburg

Beitrag von Andreas I. » 16.02.2009, 16:31

Hallo, hab das Thema ein paar Tage schleifen lassen. Hier der Code:

Code: Alles auswählen

...
          Connection con = null; 
          try 
          { 
         con = DriverManager.getConnection( "jdbc:db2:DS2", "**user**", "**pass**" );
         Statement stmt = con.createStatement(); 
         ResultSet rs = stmt.executeQuery( "get snapshot for all on ds2" );
...
ergibt die Fehlermeldung:
"com.ibm.db2.jcc.b.SqlException: [jcc][10103][10941][3.50.152] Die Methode executeQuery kann nicht zur Aktualisierung verwendet werden. ERRORCODE=-4476, SQLSTATE=null"

Wenn ich anstatt "get snapshot for all on ds2" irgendwelche SQL-Befehle wie SELECT oder UPDATE schreibe, funktioniert es fehlerlos!
Ich denke, es liegt daran, dass "get snapshot..." wohl ein DB2-Befehl ist, aber kein SQL-Befehl. Per Hand über die Konsole funktioniert es dagegen fehlerfrei.
Aber irgendwie muss man die DB2-Monitordaten doch auch per Software auslesen und überwachen können?
Und das nächste Problem ist dann wohl ALTER TABLESPACE (In Reaktion auf die gelesenen Werte...."

everflux
PostRank 8
PostRank 8
Beiträge: 939
Registriert: 01.05.2006, 17:15

Beitrag von everflux » 16.02.2009, 16:35

Teste doch mal mit
stmt.executeUpdate(...)
https://everflux.de/ blogging about life, programming, seo and the net

Andreas I.
PostRank 9
PostRank 9
Beiträge: 1464
Registriert: 18.03.2006, 14:36
Wohnort: Hamburg

Beitrag von Andreas I. » 16.02.2009, 16:45

Dann kommt:
"Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Type mismatch: cannot convert from int to ResultSet"

Anscheinend gibt stmt.executeUpdate(...) Integerwerte zurück, die wohl über Erfolg oder Misserfolg des Updates etwas sagen...?
Aber ich will ja gar keine Integerwerte über Erfolgsmeldungen haben, sondern die Monitordaten der Datenbank.
Irgendwie ist das wohl der falsche Ansatz?

everflux
PostRank 8
PostRank 8
Beiträge: 939
Registriert: 01.05.2006, 17:15

Beitrag von everflux » 16.02.2009, 17:32

Wenn ich das hier richtig sehe
https://publib.boulder.ibm.com/infocent ... 006003.htm

Kannst du auf die daten per kommandozeile oder per table space funktionen zugreifen.
https://everflux.de/ blogging about life, programming, seo and the net

Andreas I.
PostRank 9
PostRank 9
Beiträge: 1464
Registriert: 18.03.2006, 14:36
Wohnort: Hamburg

Beitrag von Andreas I. » 16.02.2009, 17:49

Per Kommandozeile?
Ich habe parallel mal etwas gegoogled und da tauchen Vorschläge auf, die Tochterprozesse mit einem DB2-Kommandofenster öffnen und dann per JAVA über das Tochter-DB2-Fenster Kommandos absetzen und die Ergebnisse auswerten....
Das scheint mir jetzt erstmal recht kompliziert und ziemlich von hinten durch die Brust ins Auge zu sein...

Kann man die table space funktionen mit JAVA ansprechen?
Klingt für mich erstmal einfacher.

everflux
PostRank 8
PostRank 8
Beiträge: 939
Registriert: 01.05.2006, 17:15

Beitrag von everflux » 16.02.2009, 18:02

Die Table Space funktionen gehen sicherlich über java...

Ich glaube das hier ist was du suchst
https://publib.boulder.ibm.com/infocent ... 010418.htm
https://everflux.de/ blogging about life, programming, seo and the net

Andreas I.
PostRank 9
PostRank 9
Beiträge: 1464
Registriert: 18.03.2006, 14:36
Wohnort: Hamburg

Beitrag von Andreas I. » 16.02.2009, 18:08

Ja, Danke! Das probiere ich jetzt erstmal aus.

Hoffentlich gibt es für ALTER TABLESPACE auch so eine Methode.

Antworten
  • Vergleichbare Themen
    Antworten
    Zugriffe
    Letzter Beitrag