建立 PHP 應用程式

若要建置可存取自治式 AI 資料庫的 PHP 應用程式,請先設定開發系統以支援可利用自治式 AI 資料庫持續可用性和高效能功能的資料庫存取。

設定開發系統之後,您可以編寫應用程式中的資料庫連線和 SQL 敘述句,以利用持續可用性和高效能功能。

設定您的 PHP 開發系統

若要設定您的開發系統,讓 PHP 應用程式充分利用自治式 AI 資料庫的持續可用性和高效能功能,請執行下列步驟。

  1. 下載與安裝 PHP。

  2. 下載並安裝 Oracle Instant Client。

  3. 下載並安裝 PHP OCI8。

  4. 下載資料庫的從屬端證明資料,並讓它們可供 Oracle Instant Client 使用。

Before You Begin - 開始之前

您的開發系統必須符合特定條件,才能順利進行設定。

下載並安裝 PHP

下載並安裝適用於您系統作業系統和架構的 PHP:

sudo dnf install -y oracle-release-el8 oracle-php-release-el8
sudo dnf install -y php php-devel php-xml dtrace-utils
wget http://pear.php.net/go-pear.phar
sudo php go-pear.phar

下載並安裝 Oracle Instant Client

下載並安裝適用於您系統作業系統和架構的 Oracle Instant Client 基本套裝軟體:

sudo dnf -y install oracle-release-el8
sudo dnf -y install oracle-instantclient21.13-basic oracle-instantclient21.13-devel

(如果您想要查看所有 Instant Client 套裝軟體的清單,請前往 http://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/index.html 。)

下載並安裝 PHP OCI8

下載並安裝適用於您系統作業系統和架構之 PHP 的 OCI8 擴充功能:

sudo PHP_DTRACE=yes pecl install oci8
sudo sh -c "echo extension=oci8.so > /etc/php.d/20-oci8.ini"
sudo sh -c "echo oci8.events = On > /etc/php.d/20-oci8.ini"

如果您的應用程式需要 Oracle 環境變數,請將它們新增至 /etc/sysconfig/httpd 組態檔,例如:

NLS_LANG=AMERICAN_AMERICA.AL32UTF8
NLS_DATE_FORMAT='YYYY-MM-DD HH24:MI:SS'
ORA_SDTZ=UTC

如果您新增這些變數,請重新啟動 Apache HTTP 伺服器以讀取新的變數:

sudo systemctl restart httpd

下載並安裝資料庫的從屬端證明資料

  1. 將包含您資料庫之從屬端證明資料的壓縮檔下載至您電腦上的安全目錄。

    您可以從 Oracle Cloud 主控台中資料庫的「詳細資訊」頁面下載此壓縮檔。如果您有一個允許您存取此頁面的 Oracle Cloud 使用者帳戶,請下載下列證明資料。如果您沒有這樣的帳戶,您必須將 zip 檔案與資料庫管理員取得,以及用來保護 zip 檔案的密碼一起取得。

    1. 在 Web 瀏覽器中,登入 Oracle Cloud 並瀏覽至「自治式 AI 資料庫」的「詳細資訊」頁面。

    2. 按一下資料庫連線

    3. 資料庫連線頁面中,按一下下載

    4. 下載公事包對話方塊中,於密碼欄位輸入一個公事包密碼,然後在確定密碼欄位中確認該密碼。

      密碼長度必須至少為 8 個字元,且必須包含至少 1 個字母及 1 個數字字元或 1 個特殊字元。

    5. 按一下下載,將從屬端證明資料壓縮檔儲存至安全目錄。

  2. 下載壓縮檔之後,請遵循下列步驟:

    1. 解壓縮從屬端證明資料壓縮檔。

    2. 編輯從屬端證明資料中提供的 sqlnet.ora 檔案,將 "?/network/admin" 取代為您解壓縮從屬端證明資料之目錄的完整路徑;例如,變更:

       (DIRECTORY="?/network/admin")
      

      到:

       (DIRECTORY="/users/jdoe/adbcredentials")
      
    3. 建立 TNS_ADMIN 環境變數,將其值設為您解壓縮從屬端證明資料之目錄的完整路徑。

程式碼資料庫連線和 SQL 敘述句

設定您的開發系統以支援與自治式 AI 資料庫的 PHP 應用程式連線之後,請遵循下列準則,以實現應用程式與資料庫連線的高效能和持續可用性:

若為 PHP,當您在下載並安裝 Oracle OCI8 擴充功能至 PHP 的過程中,將 oci8.events = On 行新增至 php.ini 檔案時,會啟用 FAN。

OCI8 介面不會顯示特定的連線集區呼叫。而是在內部使用連線集區。若要瞭解連線集區的優點,請使用 oci_pconnect() 函數來建立或重複使用保留在 HTTP 要求中的永久連線。

舉例而言:

$connection = oci_pconnect("appuser", getenv("MY_PASSWORD_ENV_VAR"), "tp_tls");

此範例會建立與 tp_tls 資料庫服務的永久連線。

相關內容