下面是详细的攻略:
安装Oracle客户端
步骤1:下载Oracle客户端
前往Oracle官网,获取适用于您的操作系统的客户端程序包(Instant Client)下载链接。这里以Oracle Instant Client 11.2.0.4为例。
步骤2:安装Oracle客户端
下载后解压缩,在终端窗口中切换到解压缩后的目录,在该目录中执行以下指令进行安装:
sudo sh ./install_client.sh
按照安装程序的指示进行安装,安装程序会要求您提供Oracle程序库所在的目录及其他信息。安装完成后您需要设置以下环境变量:
export ORACLE_HOME=/usr/lib/oracle/11.2/client64
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
步骤3:测试安装
创建一个测试脚本test.php
,内容如下:
<?php
$conn = oci_connect('username', 'password', 'localhost/orcl');
if (!$conn) {
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
echo 'Connected to Oracle Server successfully';
oci_close($conn);
?>
其中,'username'和'password'分别为Oracle连接用户名和密码。
在终端中运行测试脚本:
php test.php
如果输出 "Connected to Oracle Server successfully",说明安装完成。
配置PHP5.3
步骤1:安装PHP oci8扩展
执行以下指令安装oci8扩展:
sudo apt-get install php5.3-oci8
步骤2:配置PHP.ini文件
编辑PHP.ini文件,添加以下内容:
extension=oci8.so
步骤3:重启Web服务器
重启您的Web服务器(如Apache或Nginx),使php.ini的设置生效。
示例1:从Oracle数据库中查询数据
以下是一个从Oracle数据库中查询数据的示例:
<?php
// Create connection to Oracle
$conn = oci_connect('username', 'password', 'localhost/orcl');
if (!$conn) {
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
// Prepare the statement
$stid = oci_parse($conn, 'SELECT * FROM customers');
if (!$stid) {
$e = oci_error($conn);
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
// Perform the logic of the query
$r = oci_execute($stid);
if (!$r) {
$e = oci_error($stid);
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
// Fetch the results of the query
print "<table border='1'>\n";
while (($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) != false) {
print "<tr>\n";
foreach ($row as $item) {
print " <td>" . ($item !== null ? htmlentities($item, ENT_QUOTES) : " ") . "</td>\n";
}
print "</tr>\n";
}
print "</table>\n";
// Clean up
oci_free_statement($stid);
oci_close($conn);
?>
示例2:向Oracle数据库中插入数据
以下是向Oracle数据库中插入数据的示例:
<?php
// Create connection to Oracle
$conn = oci_connect('username', 'password', 'localhost/orcl');
if (!$conn) {
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
// Prepare the statement
$stid = oci_parse($conn, "INSERT INTO customers (id, name) VALUES (1, 'John')");
if (!$stid) {
$e = oci_error($conn);
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
// Perform the logic of the query
$r = oci_execute($stid);
if (!$r) {
$e = oci_error($stid);
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}
// Clean up
oci_free_statement($stid);
oci_close($conn);
?>
希望这些说明可以帮到您。如果有任何问题或困惑,请随时联系我。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Linux下安装oracle客户端并配置php5.3 - Python技术站