PHP pdo удаленное соединение с ошибкой Oracle

Я пытался удаленно подключиться к оракулу с помощью pdo
У меня включен драйвер pdo

extension=php_pdo_odbc.dll

Но получаю эту ошибку

«SQLSTATE [HY000]: OCIEnvNlsCreate: проверить, что набор символов действителен и что PHP имеет доступ к библиотекам Oracle и данным NLS (ext \ pdo_oci \ oci_driver.c: 614)»

Вот мой код для подключения

try {
$dbh = new PDO("oci:dbname='My server ip'/orcl;charset=UTF-8", "my user name", "my password");

}
catch (PDOException $e)
{     echo $e->getMessage();     }

2

Решение

У меня было одно и то же сообщение об ошибке после того, как я установил несколько копий ODAC / ODT, потому что я не знал, какая версия мне нужна, чтобы мои проекты Visual Studio (приложение Windows Forms и веб-сайт ASP.NET) подключались к базе данных Oracle. В конце концов, исправляя эту проблему с подключением, я сломал свой сайт PHP / PDO, который также должен был подключаться к той же базе данных Oracle. Он дал мне то же сообщение об ошибке, что и в вашем вопросе.
Я удалил все установки клиента ODAC / ODT, а также сервер Oracle, чтобы быть уверенным, а затем переустановил только сервер Oracle (в моем случае Oracle 11.2 Express 64bit), и он снова заработал. Я мог подключиться снова из SQL Developer, а также через PHP / PDO. После этого я установил правильную ODAC / ODT (32-битную (!) Версию из-за моей 32-битной Visual Studio), и теперь также мой проект Visual Studio Forms И веб-сайт ASP.NET могут подключаться к серверу Oracle.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]