使用PHP连接到Oracle
如何从PHP连接到远程Oracle数据库实例?
我需要查询(只读)远程Oracle数据库以获取一些信息。我需要安装Oracle Instant Client吗?
PHP的OCI扩展是否足够?
解决方案
回答
我在PHP文档的"注释"部分中看到了这一点:
If you're using PHP with Oracle Instant Client, you can use easy connect naming method (...)
因此,我认为很明显,我们可以仅使用PHP Oracle扩展名而无需Oracle Instant Client即可连接到Oracle DB。
回答
要完成这项工作,我们需要执行几个步骤。
首先,我们需要为任何操作系统安装oracle驱动程序。然后,为odbc创建一个DSN,以用于将php函数调用连接到oracle数据库。在Windows上,我们可以在控制面板-> ODBC源中找到它
完成此操作后,重新启动数据库,Web服务器,然后应该可以使用以下命令对其进行测试:
odbc_connect($ dsn,$ user,$ pass);
如果我们使用的是Linux,则需要执行相同的步骤,但是我不确定如何在UNIX中创建DSN。
回答
从PHP手册
- 我们将需要Oracle客户端库才能使用此扩展。
- 安装所有必需文件的最方便的方法是使用Oracle Instant Client,可以从Oracle的站点上获得它。
回答
如果我们尝试使用PHP在ubuntu上连接到oracle,那么以下链接将大有帮助:
A)http://pecl.php.net/bugs/bug.php?id=9253
这是真正的主力军,它几乎可以为我们提供所需的所有数据。
B)http://fabrizioballiano.net/2008/01/26/how-to-install-php-pdo_oci-on-ubuntu-gutsy/
这对于帮助oracle使用ubuntu所需安装的详细信息也很有帮助。
如果将它与PHP一起使用,则需要确保TNS_ADMIN和ORACLE_HOME环境变量可用于apache的用户,在apache2目录中有一个名为" envvars"的文件,我们可以在其中进行设置。 (为了我自己的易用性,我将两个指向同一目录。)
回答
将PHP与Oracle结合使用的最佳手册是Underground PHP Oracle Manual。定期更新。例如,最近的更新描述了新的很酷的OCI(Oracle呼叫接口)功能。我偶然发现了它,从那以后再也没有后悔过。从好的手册开始。