thinkphp連線Oracle

悬剑丶發表於2024-08-03

1、連線準備(自行下載對應版本)

PHP驅動擴充套件 :用於PHP連線Oracle

Oracle即時客戶端 :Oracle即時客戶端,用於與Oracle通訊,必須匹配Oracle版本

VC執行庫 :不一定安裝,伺服器中有執行庫就不用安裝

2、擴充套件安裝

php.ini中
extension=oci8_12c extension=pdo_oci

一般在配置檔案中已存在該擴充套件,開啟即可
instantclient-basic-windows.x64-11.2.0.4.0.zip

解壓後將 instantclient_11_2 配置在系統環境變數中即可

3、其他

oci8_12c找不到擴充套件
可以更換為
extension=oci8_11c
如果Oracle可以連線並執行 DQL 語句,但無法執行 DDL、DML語句
查詢記錄鎖
SELECT a.sid, a.serial#,a.USERNAME,ao.OBJECT_NAME FROM v$locked_object lo, dba_objects ao, v$session a WHERE ao.object_id = lo.object_id AND lo.session_id = a.sid;
如果存在則當前表被鎖定,無法執行 DDL、DML 語句
刪除鎖
ALTER system KILL session 'SID,serial'
(使用 Oracle developer 會一直佔用,關閉後使用其他方式連線查詢是否還有記錄鎖即可)
查詢Oracle版本
select * from v$version;

相關文章