У меня есть пример строки подключения из DashDB (DB2) в облаке, которая работала, когда я подключался из Bluemix (приложения для облачного литья PHP) к DB2 на основе облака.
Теперь я хотел бы подключиться к zOS DB2 DB с помощью Secure Gateway.Я уже настроил SG, у меня также есть имя хоста и порт SG.
Вот подготовка строки подключения с использованием образца из DashDB и добавлением имени хоста Secure Gatway и номера порта , а также моего pw и моего ID пользователя для этой базы данных zOS DB2:
$database = "EU***DB2*";
$hostname = "cio-sg-02.integration.ibmcloud.com";
$user = "**myuserID**";
$password = "**myPW**";
$port = **portfromSecureGatway**;
$ssl_port = **portfromSecureGatway**;
Вот сборка строки подключения (также из примера DashDB ..)
$driver = "DRIVER={IBM DB2 ODBC DRIVER};";
$dsn = "DATABASE=$database; " .
"HOSTNAME=$hostname;" .
"PORT=$port; " .
"PROTOCOL=TCPIP; " .
"UID=$user;" .
"PWD=$password;";
$ssl_dsn = "DATABASE=$database; " .
"HOSTNAME=$hostname;" .
"PORT=$ssl_port; " .
"PROTOCOL=TCPIP; " .
"UID=$user;" .
"PWD=$password;" .
"SECURITY=SSL;";
$conn_string = $driver . $dsn; # Non-SSL
//$conn_string = $driver . $ssl_dsn; # SSL
Использую ли я подходящий драйвер для zOS / DB2?
и вот команда подключения в PHP:
$connection = db2_connect($conn_string,$user,$password);
Я открыл заявку в службу поддержки Secure Gateways, потому что я получаю сообщение об ошибке SQL30081N с различными настройками (на основеесли я подключаюсь с помощью SG Desktop Client - он работает, - он не работает, я использую размещенный SG Client ... и если я не использую SG и пытаюсь подключиться напрямую к zOS со своего рабочего стола (в этом случае я получаю лицензиюошибка, поскольку у меня еще не настроен файл лицензии zOS.)
Возможно ли, что отсутствующая лицензия также вызывает ошибку SQL30081N?
Служба поддержки сообщает, что у меня ошибка приложения.Возможно ли, что я использую неправильную строку подключения?