众所周知,在使用PHP(针对5.2及后续版本)和PLSQL操作oracle数据库前需要先安装客户端来部署环境,然而事实上在连接过程中仅仅只需要客户端中的几个文件罢了。完整版客户端对于我们这些数据库不在本地,仅仅需要远程操作数据库的人来说过于庞大了。

所以我们没有必要去安装动辄几百兆大的完整版客户端,仅仅只需要客户端里面的几个文件罢了。幸运的是,官方提供了客户端的basic版本,30M左右,只提供了连接所必须的文件。悲剧的是,该版本并不是完美的,使用PHP时没什么问题,但是使用PLSQL时缺少一个重要的文件,使得PLSQL无法连接远程数据库,而且该版本是没有安装程序的,所以我们还需要对其进行一些设置后才可以使用。

basic版客户端下载:

版本的选择原则上跟你远程数据库版本的大版本号一致即可,然后将下载下来的客户端解压到一个固定的位置,以后不要移动它,除非你同步它的环境变量(后面说)。右键我的电脑>属性>高级>环境变量,在系统变量的“Path变量”里,按照格式将客户端的路径添加进去即可,如“E:instantclient10;”。此时PHP已经可以正确连接远程数据库了,但对于PLSQL来说还不够,我们还需要进行一些设置。注意:系统环境变量的修改需要重启后才能生效,每次修改后需要重启一次才可以看到效果。

将以下内容保存为“tnsnames.ora”,IP地址修改成你的远程数据库的IP地址。

ORCL_192.168.10.110 =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.110)(PORT =

1521))

)

(CONNECT_DATA =

(SID = orcl)

(SERVER = DEDICATED)

)

)

然后将“tnsnames.ora”放到客户端的目录里即可,接着在系统变量里添加一个新变量,变量名为“TNS_ADMIN”,变量值为你的客户端路径,如“E:instantclient10”。然后打开PLSQL,不要登录选择取消进入主界面,在工具>首选项>Oracle>连接里将Oracle主目录指向你客户端的目录,将OCI库指向你客户端下的“oci.dll”文件,保存后重启,PQSQL即可成功连接远程数据库。

如果出现乱码说明客户端的编码与远程数据库的编码不一致,此时还需要在系统变量里添加一个新变量,变量名为“NLS_LANG”,变量值为“SIMPLIFIED

CHINESE_CHINA.AL32UTF8”,我的编码是UTF8,请根据实际情况自行修改。系统变量生效后乱码问题圆满解决~

php sql oracle数据库,PHP、PLSQL连接oracle数据库的方法相关推荐

  1. Oracle数据库安装+汉化版PLsql+Oracle插件,plsql连接Oracle步骤和报错解决办法

    从https://download.csdn.net/download/fxiaoyaole/10449523 此链接下载里面有所资源,资源包括(Oracle两个数据库压缩包win64_11gR2_d ...

  2. 使用oracle客户端与PLSQL连接ORACLE数据库软件安装过程

    1. 下载安装PLSQL软件,以及oracle客户端安装软件instantclient. 2. instantclient文件中新建network文件夹,在它下面再新建一个admin文件夹,在admi ...

  3. 只安装oracle服务端连plsql,Oracle 不安装Oracle客户端,使用PLSQL连接Oracle服务器

    一.软件环境 二.环境配置 1.解压在任意目录,以E:/oracleclient为例; 2.在E:/oracleclient下创建network/admin目录,新建tnsnames.ora文件,内容 ...

  4. plsql如何配置连接oracle数据库,PLSQL连接Oracle 数据库配置详解

    (oracle官网下载地址:http://www.oracle.com/technetwork/topics/winsoft-085727.html , 下载地址2:http://download.c ...

  5. plsql连接Oracle报错:Initialization error

    plsql连接Oracle报错:Initialization error,解决方案 背景: 今天服务器操作系统升级(由Windows server 2008 R2 64bits升级到Windows s ...

  6. python oracle数据库开发_python连接Oracle数据库

    # python连接oracle数据 ## 介绍 ----------------------------- - python 连接oracle数据库,可以使用cx_oracle模块 - 使用如下命令 ...

  7. oracle数据库连接时报12514_连接Oracle数据库时报ORA-12541:TNS:无监听程序的图文解决教程...

    在用PL/SQL Developer等客户端工具连接oracle服务器时出现ORA-12541:TNS:无监听程序的错误,如下图: 发现原来是oracle的监听没有启动,重启监听后就连接成功了,下面跟 ...

  8. vs2015如何连接oracle,VS2015中C#连接Oracle数据库

    硬件环境:Win10 64位+ VS2015 + ODP.Net for VS2015 配置ODP.Net Oracle Developer Tools for Visual Studio 12.1. ...

  9. oracle 连接组件,[2021] node连接oracle数据库示例[使用oracle官方组件]

    [2021] node连接oracle数据库示例[使用oracle官方组件] node 连接 oracle 示例 本示例采用的 oracledb 和 instantclient-basic-windo ...

  10. PLSql连接Oracle时提示TNS:无监听程序的解决方法

    用plsql连接oracle时,总会遇到各种各样的问题,总结下当遇到TNS:无监听程序问题提示时,如何去解决 1.检查客户端配置的Ip是否有错 根据oracle client安装路径 找到 tnsna ...

最新文章

  1. 以太坊源码分析之随心笔记
  2. 逻辑回归的相关问题及java实现
  3. Android UI selector 例子 (drawable/color)
  4. HTTP请求和数据安全
  5. 【算法】验证哥德巴赫猜想
  6. list转换为map
  7. C++学习日记5——模板
  8. win10下虚拟机VMware极简安装PhoenixOS
  9. 51单片机驱动8位数码管(74HC595驱动)滚动显示
  10. 鸟哥惠新宸:PHP 7.1 的新特性我并不是很喜欢
  11. android迅雷下载搭建开发环境
  12. Matlab动态作图——animatedline函数
  13. Problem G: 规范序排列
  14. Beam Failure Detection
  15. 使用74LS245驱动8×8LED点阵屏显示数字
  16. 局域网安全之ARP攻击
  17. C++ 树进阶系列之笛卡尔树的两面性
  18. vue用watch监听对象,打印oldValue和newValue相同的问题
  19. Win7 32Bit与64Bit版本终极对决
  20. Codeforces Round #411 (Div. 1)(A~D)题解

热门文章

  1. 我应该如何道德地接近用户密码存储以便以后的明文检索?
  2. Cisco 无线AP刷机为胖AP
  3. Groovy学习专栏
  4. 《互联网运营智慧》第7章“简单cdn”正式版下载
  5. 《网站分析师实战指南》一2.6 让例行公事的报告见鬼去吧
  6. DAY02 WINDOWS Ghost系统的备份与还原以及不同虚拟机的通信的实现
  7. JSP/Servlet 工作原理
  8. 快速排序(Python实现)
  9. php ftp 分块下载,php ftp下载文件
  10. 数据备份 另一服务器_为什么NAS网络存储服务器会受到如此多的关注?