[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Mar 2005
    Beiträge
    4

    DB2 DRDA Verbindung zwischen iSeries und Windows2003

    Ich versuche, die iSeries als Requester (AR) zu definieren und auf eine DB2 UDB unter Windows zuzugreifen.

    Ausgangspunkt:
    OS/400 V5R2
    Windows2003 mit UDB 8.2 Express Edition (Trial Version)

    DB2 Definition:
    DB Server Name: XSRVAS
    IP Adresse des Servers: 134.128.75.57
    Name des Exemplars(Instanz): DB2
    Portnummer: 50000
    Name der Datenbank: SAMPLE
    Name der Tabelle: SALES

    WRKRDBDIRE Eintrag
    Datenbankname : XSRVAS
    IP-Adresse: 134.128.75.57 (kein Eintrag im DNS)
    Portnummer: 50000
    Autorisierung: *USRIDPWD (*ENCRYPTED funktioniert nicht )

    Benutzer: DB2ADMIN

    Ich starte STRSQL ( Job CCSID = 273)

    CONNECT TO "XSRVAS" USER "DB2ADMIN" USING ******

    Es wird gemeldet, daß die Verbindung zur relationalen Datenbank XSRVAS besteht. Das klingt erst mal gut.

    Doch nach meiner Kenntniss heißt die Datenbank doch SAMPLE.

    Jeder Versuch eines SELECT schlägt fehl mit "DRDA Protokollfehler".

    SELECT * FROM SAMPLE.SALES
    SELECT * FROM SALES

    Auch erhalte ich mit F4 keine Tabellen Auswahl.

    Was mache ich verkehrt ?

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Der Name der als Datenbank angezeigt wird ist der RDB-Name des WRKRDBDIRE.
    Vielleicht solltest du vorher über F13, 1 Sitzungsattribute, die Namenskonvention auf *SQL umstellen sowie die Commit-Steuerung auf *CS oder *CHG.
    F4 funktioniert evtl. nur bei AS/400-DB's.

    Ein DRDA-Fehler deutet auf Inkompatibilität des Protokolls hin. Im Joblog stehen vielleicht weitere Hinweise.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Mar 2005
    Beiträge
    4

    Wink Fehler gefunden !!!

    Ich habe die Lösung !

    Nachdem ich erstmal die Verbindung mittels ODBC von einem Client aus getestet habe, wußte ich das der Server in Ordnung ist. Bei der ODBC Quelle mußte ich für die Verbindung die Datenbank SAMPLE angeben, nicht den Verwaltungsserver XSRVAS.

    Daraus schlußfolgernd habe ich nochmal den Eintrag im WRKRDBDIRE geändert. Als Relationale Datenbank habe ich nun SAMPLE statt XSRVAS angegeben.

    Den STRSQL habe ich mit Namenkonvention *SQL aufgerufen.

    CONNECT TO SAMPLE USER DB2ADMIN USING ''

    Es folgte die Meldung "SQL Fehler". Und daraus hatte ich bisher abgeleitet, daß diese Verbindung nicht funktionieren kann. Das war mein Fehler !
    Die Fehlermeldung besagt nämlich, daß deshalb andere SQL Befehle durchaus funktionieren können. Und der SELECT tat es auch:

    SELECT * FROM ADMINISTRATOR.SAMPLE

    Auch der CREATE TABLE funktionierte.

    Nun muß ich nur noch analysieren, was es mit dem SQL Fehler beim CONNECT auf sich hat.

    Danke für die Unterstützung.

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Auch der gemeldete SQL-Fehler muss im Joblog weitere Erklärungen haben.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Mar 2005
    Beiträge
    4

    DRDA Berechtigungsproblem

    Nachdem ich jetzt eine eigene Datenbank angelegt habe, bekomme ich beim CONNECT auch keine Fehlermeldung mehr.

    Aber jetzt habe ich ein neues Problem. Mit dem Benutzer db2admin habe ich über den iSeries Client ( STRSQL) alle Rechte. Dann habe ich einen neuen Benutzer angelegt, der nur das Recht SELECT an der Datenbank hat. Zuerst habe ich diesen Benutzer über den Windows Client via ODBC getestet und es funktioniert wie erwartet.
    Wenn ich mit dem gleichen Benutzer über den iSeries Client auf die Datenbank zugreife und einen SELECT ausführe, dann bekomme ich die Meldung:

    Syntaxfehler oder ungültiger Zugriff - SQLSTATE 42501, SQLCODE -551,

    Der Fehlercode bedeutet ein Berechtigungsproblem.
    Was muß ich im Fall eines iSeries Clients noch tun ?

  6. #6
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Eigentlich nur sicherstellen, dass beim Connect das richtige Profil verwendet wird.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  7. #7
    Registriert seit
    Mar 2005
    Beiträge
    4
    Habe das Problem gefunden !!!!

    Für einen Zugriff vom iSeries Client (STRSQL) muß für den Benutzer auf der Datenbank folgende Paket Berechtigung hinzugefügt werden:

    QSQL400.QSQL2011 BIND=ja EXECUTE=ja CONTROL=nein

Similar Threads

  1. Dateiübertragung zwischen iSeries und PC/Server
    By UFi in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 18-12-06, 14:26
  2. MSG zwischen zwei iSeries
    By Marlin in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 17-11-06, 12:27
  3. Java ... JDBC ... Zugriff DB2 - Port iSeries ???
    By bode in forum NEWSboard Java
    Antworten: 7
    Letzter Beitrag: 02-09-05, 15:09
  4. Iseries DB2
    By TARASIK in forum IBM i Hauptforum
    Antworten: 6
    Letzter Beitrag: 24-02-05, 19:16
  5. Datentransfer DB2 iseries nach DB2 RS/6000
    By rcide in forum IBM i Hauptforum
    Antworten: 10
    Letzter Beitrag: 17-08-04, 12:40

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •