ホームページ  >  記事  >  バックエンド開発  >  Win7でPHPを使用してリモートOracleに接続する方法

Win7でPHPを使用してリモートOracleに接続する方法

醉折花枝作酒筹
醉折花枝作酒筹転載
2021-07-15 16:13:591594ブラウズ

誰もが Oracle を知っていると思いますが、誰もが PHP を使用してリモート Oracle に接続する方法を知っているわけではありません。今日は、PHP を使用してリモート Oracle に接続する方法を説明します。必要な友人は参照してください。

Win7でPHPを使用してリモートOracleに接続する方法

<?php
/*
先下载oracle客户端
下载地址
http://www.oracle.com/technetwork/topics/winx64soft-089540.html
下载如下三个版本
instantclient-basic-win64-10.2.0.5.zip
instantclient-sqlplus-win64-10.2.0.5.zip
instantclient-odbc-win64-10.2.0.5.zip



另下载php Oracle驱动,下载地址 https://windows.php.net/downloads/pecl/releases/oci8/2.0.10/
这里版本是
php_oci8-2.0.10-5.5-ts-vc11-x64.zip
将其中内容全部解压缩到php编译文件目录下的 ext 文件夹里
这里是
D:\ApacheServer\php\ext



将三个压缩包解压缩到一个默认文件夹 instantclient_10_2 下
这里instantclient_10_2 放在了 Navicat Premium 安装目录下,位置为
D:\ApacheServer\Navicat Premium\instantclient_10_2

修改环境变量
全部在系统变量中
修改如下
新增
变量名
NLS_LANG
变量值
SIMPLIFIED CHINESE_CHINA.ZHS16GBK

变量名
ORACLE_HOME
变量值
D:\ApacheServer\Navicat Premium\instantclient_10_2

变量名
TNS_ADMIN
变量值
D:\ApacheServer\Navicat Premium\instantclient_10_2

修改
变量名
Path
结尾处新增
;D:\ApacheServer\Navicat Premium\instantclient_10_2
注意和之前值之间有个 ;










instantclient_10_2 目录下新建 TNSNAME.ORA,这里是D:\ApacheServer\Navicat Premium\instantclient_10_2\TNSNAME.ORA
内容如下
================================以下TNSNAME.ORA内容==============================
SHTSDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 45.97.194.92)(PORT = 1521))
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = SHTSDB)
  )
)

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
    )
  (CONNECT_DATA =
    (SID = PLSExtProc)
    (PRESENTATION = RO)
  )
)
================================以上TNSNAME.ORA内容==============================
SHTSDB 是Oracle实例名(库名,SID名),服务器IP 45.97.194.92,端口号1521






启动命令行
d:
cd D:\ApacheServer\Navicat Premium\instantclient_10_2
odbc_install.exe



最后重启电脑




输入如下代码测试即可
新建index.php页面,输入如下内容
*/
phpinfo();exit;
$db_server = "45.97.194.92";
$db_user = "YIMAI";
$db_pass = "YIMAI";
$db_sid = "SHTSDB";
$dbconn=OCILogon($db_user,$db_pass,"(DEscriptION=(ADDRESS=(PROTOCOL=TCP)(HOST=45.97.194.92)(PORT= 1521))(CONNECT_DATA =(SID=$db_sid)))"); 
if($dbconn!=false) 
{
    echo "连接"; 
    echo "DB服务器:".$db_server;
    echo "用户:".$db_user;
    echo "口令:".$db_pass;
    echo "SID:".$db_sid;
    echo "成功\n";
    if(OCILogOff($dbconn)==true) 
    { 
        echo "关闭连接成功!";
    } 
} 
else 
{ 
    echo "连接失败"; 
} 
?>

推奨学習: php ビデオ チュートリアル

以上がWin7でPHPを使用してリモートOracleに接続する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcnblogs.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。