Назад | Перейти на главную страницу

php_ibm_db2.dll в IIS 7.5 с использованием сообщения об ошибке PHP 5.3

Я пытаюсь использовать расширение ibm_db2 для доступа к базе данных iSeries DB2.

Это тестовый код (взят из Вот)

<?php
$database = 'ALI452BFAL'; //library
$user = 'STN452';
$password = '**********';
$hostname = 'myserverip';
$port = 50000;

$conn_string = "DRIVER={IBM DB2 ODBC DRIVER};DATABASE=$database;" .
  "HOSTNAME=$hostname;PORT=$port;PROTOCOL=TCPIP;UID=$user;PWD=$password;";
$conn = db2_connect($conn_string, '', '');

if ($conn) {
    print "ok";
    db2_close($conn);
}
else {
    echo db2_conn_error() . '<br>' . db2_conn_errormsg();
}
?>

Я установил очень простой пакет, содержащий драйвер db2, и добавил его как расширение.
(Драйвер IBM Data Server для ODBC, CLI и .NET.msi)

Это мой результат:

08001 [IBM] [Драйвер CLI] SQL30081N Обнаружена ошибка связи. Используемый протокол связи: «TCP / IP». Используемый коммуникационный API: «РОЗЕТКИ». Местоположение, в котором была обнаружена ошибка: «10.10.0.120». Функция связи, обнаруживающая ошибку: «подключить». Код (ы) ошибок протокола: "10061", "","". SQLSTATE = 08001 SQLCODE = -30081

Кто-нибудь пробовал это раньше ??

Номер порта, который вы используете, неверен - серверы iSeries используют порт 446, а не порт 50000.

Однако для того, чтобы использовать Драйвер IBM Data Server для ODBC, CLI и .Net для доступа к серверу iSeries у вас должна быть лицензия на продукт IBM под названием DB2 Connect.

Вам не нужно использовать DB2 Connect, вы можете использовать IBM i Access для Windows product, который предоставляет драйвер ODBC для прямого подключения к серверу iSeries.