Page 1 of 2 12 LastLast
Results 1 to 15 of 16
  1. #1
    Join Date
    Nov 2016
    Posts
    10

    Unanswered: DB2 11.1 SQL1022C There is not enough memory available to process the command.

    First here are some basic specs. OS Windows 10, host machine RAM 16G, vm RAM 4G (also tried it with 12G), DB2 version 11.1. I am a web programmer and I am not fluent in DB2. I was tasked with setting up a windows 10 machine for developers. Since Windows 10 supports DB2 11.1 we switched from 9.7.

    I am trying to connect to a DB2 database through code using sslnode. This worked fine with DB2 9.7. When I try to make a connection to the database I get the following [IBM][CLI Driver] SQL1022C There is not enough memory available to process the command. SQLSTATE=57011. I tried to rule out something in the code by opening a DB2 command prompt as administrator. I then used db2 connect to database {database name} using {my id}. I entered my password when prompted but I got the same message.

    I have tried googling and either the suggestion didn't work or I may have not understood it completely to implement it correctly. I can provide additional information if needed.

    Thanks in advance.

  2. #2
    Join Date
    Aug 2016
    Posts
    55
    Provided Answers: 2
    Can u give more info from db2diag.log

    what id db cfg for database_memory
    what is dbm cfg for instance_memory

    db2 get dbm cfg

    db2 get db cfg

  3. #3
    Join Date
    Nov 2016
    Posts
    10
    Thanks for the quick reply. I have attached the output of the instance memory and the db2diag.log.txt file. When I tried to get the database memory I got "SQL1042N A database connection does not exist. SQLSTATE=08003". An older machine that has 9.7 installed returns with "SQL1651N The request cannot be executed because the DB2 server version does not support this functionality.".
    Attached Files Attached Files

  4. #4
    Join Date
    Aug 2016
    Posts
    55
    Provided Answers: 2
    Don't see anything related to server,

    Database Manager Configuration
    Node type = Client

    nothing related to memory in diag log.

    Is this client windows machine. ? is db2 installed in windows ?

  5. #5
    Join Date
    Nov 2016
    Posts
    10
    Yeah, I installed the DB2 version 11.1 on windows 10. We use DB2 for getting access to the mainframe.

  6. #6
    Join Date
    Nov 2016
    Posts
    10
    On the other windows vm that has db2 9.7 installed when I connected to the database this was returned. database server: DB2 z/OS 10.1.2. I hope that helps.

  7. #7
    Join Date
    Apr 2012
    Posts
    1,143
    Provided Answers: 27
    Are there any *local* databases on the Windows-10 machine, or are all the databases remote on DB2 for Z/OS ?
    If all the databases are remote, why are you using a DB2-server product when other options exist?
    For example, if your applications are able to use a jdbc type-4 driver, then you do not need a DB2-server/DB2-connect product (but you do need the relevant licence file for the Z/OS connectivity).
    If your applications are using CLI or ODBC then most likely you will need a DB2-Connect-server product .
    What is the name of the DB2 product that is installed ? You can see this in appwiz.cpl.
    If a DB2-server product is installed in a Windows-10 Virtual-Machine that has only 4GB RAM allocated, then I would expect to see complaints such as "out of memory".

  8. #8
    Join Date
    Nov 2016
    Posts
    10
    The databases are remote on Z/OS. Unfortunately the product we use is out of my hands. We are using CLI and ODBC. The installed product is IBM Data Server Client - DB2COPY1. When I type db2licm -l I get the following:

    Product name: "DB2 Connect Enterprise Edition"
    License type: "Client Device"
    Expiry date: "Permanent"
    Product identifier: "db2consv"
    Version information: "11.1"


    I thought that DB2 11.1 is supported in Windows 10 Enterprise. I also tried changing the vm ram to 12G but that did not work. Do you think it is because the OS is operating in a vm? Should I try to run it in Windows 7 Pro regular PC as a test?
    Last edited by DMo2; 11-03-16 at 13:01.

  9. #9
    Join Date
    Apr 2012
    Posts
    1,143
    Provided Answers: 27
    Is the DevMasterWin10 a member of an Active-Directory Domain?

    Can you confirm (from appwiz.cpl) there is is only a single DB2 product installed on this hostname, and if there is more than one, please list them in full.

    Is the account that runs the DB2-services a local-account or a Domain-account? (see this in services.msc).

    Which groups is that account a member of? (and are those groups domain groups or local groups)?

    The db2diag shows SSL related messages and a kdb/stash file configuration -so does DevMasterWin10 have the IBM GSK8 installed? If your connections are not yet encrypted you might want to temporarily eliminate that from enquiries (i.e. temporarily set ssl_client_stash, ssl_clnt_keydb to null) to see if that changes the symptom. If it does, then you know it is either an SSL/GSK8 issue or an issue with your kdb/stash pair.

    Another suggestion is to uninstall the DB2-product, reboot, then re-install but this time *exclude* (i.e. do not tick) the option to use extended security. Does this change the symptom?

    Another suggestion is to set the DIAGLEVEL to 4 to see if that gives any additional information

  10. #10
    Join Date
    Nov 2016
    Posts
    10
    Yes DevMasterWin10 is part of a domain. I double checked, there is only one DB2 product installed. The account is a local account, the Log On tab of the service has Local System Account selected. If I am looking at it correctly the Local System Account (NT AUTHORITY\SYSTEM) is a member of the Administrators group. Unfortunately the way the system is set up remotely it will reject non ssl calls. I have changed the DIAGLEVEL to 4, that is giving more information than before - thanks. I am trying a few different things. Once I have gone through those I can provide the output in the dialog file.

  11. #11
    Join Date
    Nov 2016
    Posts
    10
    Here is what I have done along with the dialog output. BTW, I confirmed that the Windows 10 vm and the DB2 product are 64 bit. To start clean I have removed the DB2 IBM Data Server Client 11.1 and the gsk8 ssl and crypt files. Both in 32 and 64 bit.

    The following steps worked for DB2 IBM Data Server Client 9.7 running on server 2008 R2 standard.
    1. Logged into VM using the local Administrator account.
    2. Installed IBM Data Server Client Version 11.1. Ran setup.exe with run as Administrator. I used the typical install options with one exception. I selected the option to not create a response file.
    3. Applied the license file through the elevated DB2 command prompt.
    4. Added an entry to the C:\Windows\System32\drivers\etc\services file to allow connection for the DB2 database.
    5. Added the following local users to the DB2ADMNS account. IUSR, NETWORK SERVICE, SYSTEM and INTERACTIVE. Typically only the IUSR and NETWORK SERVICE is needed but since I was having problems I added the other two.
    6. Installed gsk8ssl32.exe and gsk8crypt32.exe.
    7. Added C:\Program Files\IBM\GSK8\lib64 and C:\Program Files (x86)\IBM\GSK8\lib to the path system environment variables.
    8. Rebooted the vm.
    9. At the elevated DB2 command prompt I created a key database a stash file. This was done from C:\Program Files (x86)\IBM\GSK8\bin\
    10. Through windows explorer I add the local DB2ADMNS group to the stash file located at C:\Program Files (x86)\IBM\GSK8\lib. The permissions are read and read & execute.
    11. Added a cert to the key database that is needed for the calls.
    12. From the elevated DB2 command prompt I added updated the dbm cfg and applied the kdb file to SSL_CLNT_KEYDB as well as the sth file to the SSL_CLNT_STASH.
    13. From the elevated DB2 command prompt I cataloged the tcpip node to sslnode remote and the security is SSL.
    14. From the elevated DB2 command prompt I cataloged database with node as sslnode and authentication server.
    15. Installed gsk8ssl64.exe and gsk8crypt64.exe.
    16. Through Windows Explorer I ran the odbcad32.exe (as admin) file from the SysWOW64 folder. Then I add a system DSN for the 32 bit.
    17. Through Windows Explorer I ran the odbcad32.exe (as admin) file from the System32 folder. Then I add a system DSN. I do get a warning that says "You are logged on with non-Administrative privileges. System DSNs could not be created or modified.". However, I am allowed to continue and add a system DSN for the 64 bit.
    18. Through Windows Explorer I ran the odbcad32.exe (as admin) file from the SysWOW64 folder. I selected the 32 bit system DSN and added CLI parameters.
    19. Through Windows Explorer I ran the odbcad32.exe (as admin) file from the System folder. I selected the 64 bit system DSN and added CLI parameters. They already existed from step 18 but I went through the steps anyway.
    20. Now I go to an elevated DB2 command prompt and attempt to connect to the database. The message at the command prompt is SQL1022C There is not enough memory available to process the command. SQLSTATE=57011.

    I have also attached the output from the db2diag.log
    Attached Files Attached Files

  12. #12
    Join Date
    Nov 2016
    Posts
    10
    Do you have any thoughts on what could be wrong? I was also thinking that maybe I need to get the newer version of the gsk executable files.

  13. #13
    Join Date
    Apr 2012
    Posts
    1,143
    Provided Answers: 27
    I'm confused by your last post as it mentions both DB2 V9.7 and V11.1 clients, some clarity needed.
    Are you saying it works OK with the V9.7 client and fails with the V11.1 client ?

    The db2diag shows errors with a 32-bit GSK8.

    Are there both 32-bit and 64-bit ODBC applications that connect on this hostname to the mainframe databases? If not, why you have both 32-bit and 64-bit versions of the GSK8. If your OS is 64-bit, and your DB2-client is 64-bit and you have 64-bit ODBC applications then why bother with any 32-bit component?

    If your DB2-client is 64-bit I think you need the 64-bit GSK8 at latest release of that component.

    But did you know that GSK8 is optional for runtime clients needing SSL connections, and there are two other methods for getting SSL working in DB2-runtime-client without having GSK8 installed? Badly documented by IBM, but both do work with the correct builds of V10.5 fixpack 5 +higher DB2-runtime-client, although one needs a special build due to IBM build errors.

  14. #14
    Join Date
    Nov 2016
    Posts
    10
    Sorry for the confusion. Yeah, it works on the v9.7 client running in a 2008 vm but not on v11.1 running on a windows 10 vm.

    We have both 32bit and 4 bit ODBC applications that connect. I will see what I can find regarding SSL connection without GSK8.

    Thanks.

  15. #15
    Join Date
    Apr 2012
    Posts
    1,143
    Provided Answers: 27
    Before doing that, did you verify with just the GSK8 (64-bit, latest build) and the V11.1 runtime client (64-bit build at latest fixpack) , and see if at least the 64-bit ODBC applications can connect after you setup the SSL ? If that works correctly (i.e no 32-bit components as yet) then at least it is a start.

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •