linux下安装php的oracle拓展
最近要用Php远程连接第三方的oracle数据库,安装oracle拓展搞了好久,终于弄出来了,现在分享出来:
1,注意安装的客户端版本要和服务端的版本一致,不然会有异常
2,安装之前先要下载三个软件:
http://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html 下载对应oracle的版本:
basic-10.2.0.5.0-linux-x64.zip
sdk-10.2.0.5.0-linux-x64.zip
http://pecl.php.net/package/oci8 下载PHP的oci8扩展:oci8-2.0.8.tgz
3,开始安装:
1):将三个软件上传到服务器,解压缩basic-10.2.0.5.0-linux-x64.zip到/usr/local/下,解压后的路径:/usr/local/instantclient_10_2
2):解压缩sdk-10.2.0.5.0-linux-x64.zip 里面有个sdk,将sdk复制到/usr/local/instantclient_10_2
3):解压缩oci8-2.0.8.tgz,进去oci8-2.0.8目录:执行phpize命令
4):然后执行:./configure --with-oci8=shared,instantclient,/usr/local/instantclient_10_2(也是在oci8-2.0.8目录执行)
5):在执行 ./configure 的时候,会提示 “checking Oracle Instant Client library version compatibility... configure: error: Link from /usr/local/instantclient_10_2/libclntsh.so to /usr/local/instantclient_10_2/libclntsh.so.*.1 not found”的错误,此时只要在 /usr/local/instantclient_10_2/ 目录下做一个符号链接就可以了:
进入/usr/local/instantclien_10_2目录:执行 ln -s libclntsh.so.10.1 libclntsh.so命令
6):重复步骤4
7):执行:make && make install命令
8):修改php.ini,在最后加上extension=oci8.so
9):重启apache:service httpd restart
10):测试连接oracle:代码:
$conn = OCILogon('username','pwd','(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=ip)(PORT = 1521))(CONNECT_DATA =(SID=dbname)))');
if (!$conn) {
$Error = oci_error();
print htmlentities($Error['message']);
exit;
}
else
{
echo "Connected Oracle Successd!";
}
4,安装配置成功
5,远程连接数据库时查询出来的数据会出现中文是问号或乱码的问题,解决办法:在页面头部加入代码:
header("Content-type:text/html;charset=GB2312");
putenv("NLS_LANG=Simplified Chinese_china.ZHS16GBK");
注意文件保存时的编码也存为gbk
linux下安装php的oracle拓展的更多相关文章
- linux下安装php的mcrypt拓展
安装步骤: 1,#wget http://museum.php.net/php5/php-5.3.3.tar.gz 2,解压:#tar -zxvf php-5.3.3.tar.gz 3,#cd ...
- 解决在Linux下安装Oracle时的中文乱码问题
本帖最后由 TsengYia 于 2012-2-22 17:06 编辑 解决在Linux下安装Oracle时的中文乱码问题 操作系统:Red Hat Enterprise Linux 6.1数据库:O ...
- linux下安装Oracle时交换空间不足的解决方法
摘:linux下安装Oracle时交换空间不足的解决方法 linux上安装Oracle时交换空间不足的解决办法 增加交换空间有两种方法: 严格的说,在系统安装完后只有一种方法可以增加swap,那就是本 ...
- Ubuntu Linux下安装Oracle JDK
from://http://blog.csdn.net/gobitan/article/details/24322561 Ubuntu Linux下安装Oracle JDK Dennis Hu 201 ...
- Linux下安装Oracle后重启无法登录数据库ORA-01034:ORACLE not available
Linux下安装了数据库,安装完成后可以用,今天启动就不能用了,提示Oracle not available,后来查找资料,据说是oracle服务没有打开.如下方式可以解决问题. [root@root ...
- Linux下安装JDK 1.8你必须知道的糟心事
来源:Atstudy网校 1.简介 在Oracle收购Sun后,Java的一系列产品就被整合到Oracle官网中,打开官网乍眼一看也不知道去哪里下载,还的一个一个的摸索尝试,而且网上大多数都是一些Or ...
- Linux下安装 Posgresql 并设置基本参数
在Linux下安装Postgresql有二进制格式安装和源码安装两种安装方式,这里用的是二进制格式安装.各个版本的Linux都内置了Postgresql,所以可直接通过命令行安装便可.本文用的是Cen ...
- Linux下安装Tomcat服务器和部署Web应用
一.上传Tomcat服务器
- Linux 下安装配置 JDK7
Linux 下安装配置 JDK7 配置环境(debian 7) 自从从Oracle收购Sun近三年来,已经有很多变化.早在8月,甲骨文将“Operating System Distributor Li ...
随机推荐
- ASP.NET MVC之控制器传递数据到视图的四种方式
前奏 1. 在新建项目中的Models文件下,新建Products类: public class Products { public int Id { get; set; } public strin ...
- 【转】深入理解javascript原型和闭包(完结)
直接传送门-------------------->>>>>>>> 深入理解javascript原型和闭包(完结)
- USB调试不能弹出授权窗口 unauthorized 的解决办法
今天把 AndroidStudio 1.5 给卸载了,重新安装 2.1版本,据说速度快了很多,结果手机一直没法授权调试,授权USB调试信任PC设备的窗口始终没看到,网上找了好多方法,什么驱动.重启.各 ...
- JSON对象和字符串的转换
JSON.parse()和JSON.stringify() 1.parse 用于从一个字符串中解析出json 对象.例如 var str='{"name":"cpf& ...
- [UWP小白日记-8]一些零碎的东西
设置启动窗口大小 直接上代码了没什么好解释的了,既然能设置最小,那铁定就能设置最大 public MainPage() { //设定窗口启动显示大小 ApplicationView.Preferred ...
- Django命令行相关命令 以及创建一个空白网页的步骤
django相关命令行命令: django.admin.py是Django的一个用于管理任务的命令行工具,manage.py是对django-admin.py的简单包装,每个Django Projec ...
- WeakSelf宏的进化(转载)
我们都知道在防止如block的循环引用时,会使用__weak关键字做如下定义: __weak typeof(self) weakSelf = self; 后来,为了方便,不用每次都要写这样一句固定代码 ...
- 关于wkwebview
一.引入库 #import <WebKit/WebKit.h> 二.初始化有两种方式 // 默认初始化 - (instancetype)initWithFrame:(CGRect)fram ...
- Scala减少代码重复
高阶函数可以把其它函数当作函数参数,帮助我们减少代码重复,例如: object FileMatcher { private def fileHere = (new File(".\\file ...
- 8.MyBatos的动态Sql
1.创建javaWeb项目MyBatis_dynamicSQL并在WebRoot下的WEB-INF下的lib下添加如下jar文件 cglib-nodep-2.1_3.jar log4j-1.2.17. ...