Не удается подключить удаленный db2 к узлу js

#node.js #db2

#node.js #db2

Вопрос:

Я пытаюсь подключить удаленный ibm db2 к узлу js на компьютере Mac, но я получаю следующую ошибку

 [Error: [IBM][CLI Driver] SQL1598N  An attempt to connect to the database server failed because of a licensing problem.  SQLSTATE=42968
] {
  error: '[node-ibm_db] SQL_ERROR',
  sqlcode: -1598,
  message: '[IBM][CLI Driver] SQL1598N  An attempt to connect to the database server failed because of a licensing problem.  SQLSTATE=42968n',
  state: '42968'
}  

И вот как я пытаюсь подключиться

 function db2Connection() {
  var ibmdb = require('ibm_db');
var connStr = "DATABASE=dbname;HOSTNAME=mydb.ibm.com;UID=userid;PWD=password;PORT=447;PROTOCOL=TCPIP";

ibmdb.open(connStr, function (err,conn) {
  if (err) return console.log(err);
  
  conn.query('SELECT * FROM T_Name FETCH FIRST 6 ROWS ONLY', function (err, data) {
    if (err) console.log(err);
    else console.log(data);

    conn.close(function () {
      console.log('done');
    });
  });
});
}

db2Connection();  

Я просмотрел некоторые документы, касающиеся этой ошибки, но не получил никакого решения. Кто-нибудь может помочь в том, как этого добиться.

Комментарии:

1. @mao Спасибо за ответ. Нет, я не подключаюсь к i-series (as / 400), это z. И в настоящее время используется драйвер node-ibm_db, а версия «^ 2.7.0» .. Да, порт открыт для подключения к целевому имени хоста.

2. возможно, вы используете clidriver (драйвер командной строки Db2), который устанавливается по умолчанию (если у вас нет ранее установленного драйвера командной строки Db2 И не установлена переменная среды IBM_DB_HOME перед установкой node-ibm_db.). Есть проблемы с последними сборками clidriver. Возможно, вы захотите попробовать использовать более старые сборки clidriver (доступны в fix central) или сначала установить Db2-runtime client или Data ServerClient, указав IBM_DB_HOME в качестве места установки. удалите и переустановите node-ibm_db.

3. @mao в настоящее время я получаю ошибку, связанную с лицензированием, поэтому проблема не в соответствующем драйвере, верно?

4. С проприетарными драйверами IBM доступ CLI к Db2-for-Z не является бесплатным. Вам понадобится файл лицензии db2-connect (с версией, соответствующей или более поздней версии вашего Db2-for-Z) в подкаталоге лицензий установки clidriver, или подключение через Db2-gateway, или подключение к подсистеме, настроенной с db2connectactivate, чтобы избежать лицензирования на стороне клиента. Если у вас все еще возникают проблемы, обратитесь к моему предыдущему комментарию.

5. @mao Большое вам спасибо.. Да, я постараюсь следовать тому же