Das habe ich nun davon, dass ich mich nicht an eine sinnvolle Empfehlung zur Benutzung von Windows gehalten habe. Hätte ich mich aber daran gehalten, wäre ich nicht auf dieses seltsame Verhalten von DB2 gestoßen.
Meinen vorherigen Rechner "
Number9" habe ich ausschließlich den User "Administrator" benutzt. Dies habe ich inzwischen für meinen aktuellen Rechner geändert. Auf unseren Linux-Systemen arbeite ich schließlich auch nicht standardmäßig als "root". Number9 hat natürlich auch ein DB2, seit Kurzem sogar in
zwei unterschiedlichen Versionen. Da ich mich normalerweise unter meiner Windows UserID auch bei DB2 anmelde, habe ich mich wohl nie explizit mit UserID und Passwort mit einer Datenbank verbunden ("connect to ...") - weder über das DB2-Befehlsfenster, noch über den AP127 mit APL2. Ich bin nun mal schreibfaul.
Nun geschah es aber letzte Woche, dass DB2 von mir UserID und Passwort haben wollte (da ich mich mit dem zweiten DB2-Exemplar als entfernte Instanz verbinden wollte). Der
connect to apl2lib9 user Administrator
im Befehlszeilenprozessor funktionierte klaglos. Aber der Connect über AP127 zickte: Nach
CTL127←'CONNECT' 'APL2LIB9' 'Administrator' PASSW
beschwert sich AP127 mit einem(1 0 0 1 162): "THE USERID ARGUMENT TO CONNECT MUST BE A CHARACTER VECTOR OF LENGTH 1 TO 8".
Aha, klingt nach guten alten Mainframezeiten.
Die DB2-Hilfe sagt zur Userid beim "Connect":
"USER authorization-name/host-variable
Identifies the user ID trying to connect to the application server. If a host-variable is specified, it must be a character string variable with a length attribute that is not greater than 8, and it must not include an indicator variable. The user ID that is contained within the host-variable must be left justified and must not be delimited by quotation marks."
Das klingt nun inkonsequent, vor allem, wenn man noch berücksichtigt, dass unter TSO DB2 auch Benutzerkennungen mit mehr als 8 Zeichen zulässt.
Der AP127 arbeitet mit Host-Variablen beim Connect. Das erklärt, warum der Verbindungsaufbau von APL2 aus mit einer langen UserID nicht funktioniert.
... einige Tage vor dem 11.11. wurde auf der GSE-Tagung der Service Level 11 für APL2 mit 11 Neuerungen und Verbesserungen vorgestellt. Wie jede CSD enthält auch diese einige Bug-Fixes, möglicherweise sogar 11 an der Zahl, ich habe sie aber nicht gezä
Aufgenommen: Jan 07, 22:23