首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle Database XE 與 Zend Core for Oracle 快速部署指南

     編輯:Oracle 資料庫基礎

概述

本文說明如何在 Linux (RHEL 3/4, SLES 9) 上安裝 Oracle Database 10g Express Edition (XE) 與 Zend Core for Oracle (ZCO),打造免費、輕量級的 PHP + Oracle 開發/部署環境。測試環境:512MB 記憶體、5GB 磁碟空間。

Oracle Database XE 介紹

  • 免費下載、開發、部署、分發,無授權費用。
  • 基於 Oracle 10g R2 核心代碼,支援 32-bit Windows/Linux。
  • 限制:使用者資料 4GB、單實例、單 CPU、1GB 記憶體。
  • 內建 Oracle Application Express (APEX) 瀏覽器管理介面。
  • 支援 SQL/PL/SQL、Java、C、PHP、.NET、C++/ODBC/OLE DB 等介面。

Oracle XE 安裝步驟 (Linux RPM)

su -
cp Oracle-xe-10.2.0.1-1.0.i386.rpm /tmp
cd /tmp
rpm -ivh Oracle-xe-10.2.0.1-1.0.i386.rpm
/etc/init.d/oracle-xe configure
# 依提示設定 APEX 埠 (預設 8080)、Listener 埠 (1521)、SYS/SYSTEM 密碼、開機自啟

驗證:瀏覽器開啟 https://127.0.0.1:8080/apex,以 SYSTEM 登入。

Zend Core for Oracle (ZCO) 介紹

Oracle 與 Zend 合作產品,整合 PHP 5、Oracle Instant Client (OCI8)、XML/Web Services 支援,提供快速開發部署平台。Zend 提供商業支援。

ZCO 安裝步驟

su -
cp ZendCoreForOracle-v1.3.1-Linux-x86.tar.gz /tmp
cd /tmp
tar -zxf ZendCoreForOracle-v1.3.1-Linux-x86.tar.gz
cd ZendCoreForOracle-v1.3.1-Linux-x86
./install
# 依圖形向導:接受授權、備份既有 php.ini、選擇安裝路徑、設定 GUI 密碼、
# 選擇 Apache 2.0.52 (模組模式)、虛擬主機 Main Server、重啟 Apache

ZCO 設定與驗證

  1. 開啟 https://127.0.0.1/ZendCore,登入 GUI。
  2. Configuration → Error Handling → display_errors = On → Save → Restart Apache。
  3. 啟用使用者目錄:編輯 httpd.conf 取消註解 UserDir public_html。
  4. 建立測試腳本 ~/public_html/hello.php:<?php echo "Hello world!"; ?>
  5. 瀏覽 https://127.0.0.1/~<username>/hello.php 驗證。

PHP OCI8 擴展核心用法

連線模式

  • oci_connect():快取連線,同腳本重複呼叫回傳同一連線。
  • oci_new_connect():獨立連線,支援並行交易。
  • oci_pconnect():持久連線,跨請求重用,需配合 oci8.max_persistent、oci8.persistent_timeout、oci8.ping_interval 參數調整。

連線字串格式

  • Easy Connect://hostname:port/service_name (需 10g Client),XE 範例://localhost/XE
  • 完整 TNS 描述:支援負載平衡、SDU 調整等進階特性。
  • tnsnames.ora 別名:設定 TNS_ADMIN 環境變數指向目錄。

交易控制

預設 OCI_COMMIT_ON_SUCCESS 自動提交;建議使用 OCI_DEFAULT 手動控制:oci_commit()/oci_rollback(),避免不必要的網路往返與 I/O。

綁定變數 (防 SQL 注入、提升效能)

$stid = oci_parse($c, "SELECT last_name FROM employees WHERE employee_id = :eidbv");
oci_bind_by_name($stid, ":EIDBV", $myeid);
oci_execute($stid);
oci_fetch_all($stid, $res);

PL/SQL 存儲程序與 REF CURSOR

使用匿名區塊 BEGIN proc(...); END; 呼叫;OCI_B_CURSOR 綁定 REF CURSOR 取回結果集。

LOB (CLOB/BLOB) 處理

oci_new_descriptor() 建立 LOB 描述符,save()/load()/read()/seek() 操作資料。

集合 (Collection) 支援

PHP 5.1.2 新增 oci_bind_array_by_name(),單次 oci_execute() 即可批次插入 PHP 陣列資料。

全球化與 XML

  • 設定 NLS_LANG (如 GERMAN_GERMANY.AL32UTF8) 或 oci_connect() 第 4 參數指定字元集。
  • Oracle XML DB (XDB) 內建:XMLELEMENT、DBMS_XMLGEN 直接從關聯資料產生 XML。

結語

Oracle XE + ZCO 為 PHP 開發者提供零成本、高整合度的 Oracle 開發堆疊,配合重構後的 OCI8 擴展,涵蓋連線池、綁定變數、LOB、集合、XML 等企業級特性,極大降低構建資料庫驅動 Web 應用的門檻。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved