这是完整的错误:
PHP Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[08004] SQLConnect: 1033 [unixODBC][Oracle][ODBC][Ora]ORA-01033: ORACLE initialization or shutdown in progress\nProcess ID: 0\nSession ID: 0 Serial number: 0\n'
我正在使用 unixODBC 连接到 oracle 11g 数据库。数据库已启动并通过以下方式作为证明:
select open_mode from v$database;
回报
open_mode
-----------------
read write
该服务的 Web 应用程序也完全可用。
最后,我可以运行:
isql -v [odbc store] [user] [password]
并以这种方式查询数据库。
所以我真的不知道为什么我不能通过 ODBC 连接来获得我需要的东西。我读过的所有内容都表明我应该遵循与此类似的过程:link to solve similar problems
感谢您的任何输入。我真的无能为力了。
我的建议是,不要使用 unixODBC,而是检查 11g 的本机即时客户端(从 Oracle 网站下载)和 PHP Oracle 调用接口。我已经使用这些很长时间了,到目前为止我从来没有遇到过任何问题。
以下是有关如何设置 PHP OCI 的指南:http ://www.php.net/manual/en/oci8.installation.php
甲骨文即时客户端:http ://www.oracle.com/technetwork/database/features/instant-client/index-097480.html