php7.4安装pg扩展-contos7

        

        今天接到一个需求,就是需要用thinkphp6链接pg(postgresql)数据库。废话不多说,直接上操作步骤

一、安装依赖

yum install -y sqlite-devel libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel ncurses curl gdbm-devel db4-devel libXpm-devel libX11-devel gd-devel gmp-devel expat-devel xmlrpc-c xmlrpc-c-devel libicu-devel libmcrypt-devel libmemcached-devel autoconf automake libtool php7.0-pgsql postgresql-devel

二、安装必须扩展

        1、安装oniguruma扩展

解压扩展 tar -zxf oniguruma-6.9.4.tar.gz
进入解压包 cd oniguruma-6.9.4/
初始化文件 ./autogen.sh
编译扩展路径 ./configure --prefix=/usr --libdir=/lib64
编译及安装 make && make install

        2、安装libzip扩展

解压扩展 tar -zxf libzip-1.2.0.tar.gz
进入解压包 cd libzip-1.2.0
编译扩展路径 ./configure
编译及安装 make && make install

        3、安装freetype扩展

解压扩展 tar -zxf freetype-2.9.tar.gz
进入解压包 cd freetype-2.9
编译扩展路径 ./configure --prefix=/usr/local/freetype
编译及安装 make && make install
设置图像路径 export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig/"

三、安装php7.4

解压PHP tar -zxf php-7.4.26.tar.gz
进入PHP cd php-7.4.26
编译PHP路径 ./configure --prefix=/usr/local/php74 --with-config-file-path=/etc --with-fpm-user=www --with-fpm-group=www --with-pdo-pgsql --with-curl --with-freetype=/usr/local/freetype --enable-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=/lib64 --with-mysqli --with-openssl --with-pdo-mysql --with-pdo-sqlite --with-pear --with-jpeg=/usr/include --with-xmlrpc --with-xsl --with-zlib --with-bz2 --with-mhash --enable-fpm --enable-bcmath --with-libxml --enable-inline-optimization --enable-mbstring --enable-mbregex --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --with-zip --enable-fpm
编译及安装 make && make install

四、添加环境变量

打开环境变量文件 vi /etc/profile
配置环境变量 PATH=$PATH:/usr/local/php74/bin
更新环境变量文件 source /etc/profile

五、配置PHP

复制php.ini文件 cp php.ini-production /etc/php.ini
复制php-fpm文件 cp /usr/local/php74/etc/php-fpm.conf.default /usr/local/php74/etc/php-fpm.conf
复制php-www文件 cp /usr/local/php74/etc/php-fpm.d/www.conf.default /usr/local/php74/etc/php-fpm.d/www.conf
复制php-fpm文件到etc目录下 cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
授权php-fpm文件 chmod +x /etc/init.d/php-fpm

六、设置开机启动

打开文件 vi /lib/systemd/system/php-fpm.service
[Unit]
Description=The PHP FastCGI Process Manager
After=syslog.target network.target
[Service]
Type=simple
PIDFile=/usr/local/php74/var/run/php-fpm.pid
ExecStart=/usr/local/php74/sbin/php-fpm --nodaemonize --fpm-config /usr/local/php74/etc/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID
ExecStop=/bin/kill -SIGINT $MAINPID
[Install]
WantedBy=multi-user.target
加入开机启动 systemctl enable php-fpm.service
重启PHP systemctl restart php-fpm.service

七、授权

chown -R www:www /usr/local/php74

八、安装pgsql扩展

        在php原文件目录下进入ext文件夹,然后找到pgsql库,进入pgsql库,操作如下:

编译共享 phpize
编译扩展路径 ./configure --with-php-config=/usr/local/php74/bin/php-config
编译及安装 make && make install
修改 vi /etc/php.ini 并加入 extension=pgsql.so , 然后重启php-fpm systemctl restart php-fpm.service

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/888820.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CentOS7.X 安装RustDesk自建服务器实现远程桌面控制

参照文章CentOS安装RustDesk自建服务器中间总有几个位置出错,经实践做个记录防止遗忘 一 环境&工具准备 1.1 阿里云轻量服务器、Centos7系统、目前最高1.1.11版本rustdesk-server-linux-amd64.zip 1.2 阿里云轻量服务器–安全组–开放端口:TCP(21…

TCP Analysis Flags 之 TCP Spurious Retransmission

前言 默认情况下,Wireshark 的 TCP 解析器会跟踪每个 TCP 会话的状态,并在检测到问题或潜在问题时提供额外的信息。在第一次打开捕获文件时,会对每个 TCP 数据包进行一次分析,数据包按照它们在数据包列表中出现的顺序进行处理。可…

c# 设计模式--抽象工厂模式 (Abstract Factory)

定义 抽象工厂模式是一种创建型设计模式,它提供了一种创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。抽象工厂模式强调的是对象族的创建,而不是单一对象的创建。 用例写法 假设我们有一个场景,需要根据不同的平…

MySQL 8.0 的主主复制(双向复制)

在 Windows Server 2022 Datacenter 上配置 MySQL 8.0 的主主复制(双向复制),步骤与 Linux 类似,但有一些特定的配置和路径需要注意。以下是详细的简化步骤: 1. 使用 root 用户登录 确保你以 root 用户登录到 MySQL …

1. 设计模式的由来

设计模式的灵感来自建筑师亚历山大的“设计套路”,后来被程序员借用,总结出一套“编程武功秘籍”。 20世纪90年代,四位软件工程师(被称为“四人帮”)——Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides&…

【笔记】Linux中使用到的一些操作

1、查找指定文件并执行删除 find . -name "checkpoint_*_*.pth" -type f -exec rm -f {} \; 2、查看每个文件夹占用空间 du -h --max-depth1 3、移动文件 mv valid.zip ./xg mv 文件 目标位置 4、删除文件夹 rmdir folder rm -r folder # 递归删除文件夹下所有内容…

java如何判断object是基本数据类型还是引用数据类型

如何判断object是基本数据类型还是引用数据类型 ‍ 直接用apache commons下的工具类isPrimitiveOrWrapper即可,没必要造轮子 /*** Returns whether the given {code type} is a primitive or primitive wrapper ({link Boolean}, {link Byte}, {link Character},* {link Shor…

Java线程的interrupt中断、wait-notify/all(源码级分析)

实例方法: interrupt()方法是设置结束阻塞(sleep、wait等),并且设置中断标记true isInterrupted()判断当前是否中断 静态方法: Thread.interrupted():调用这个方法的线程中断标记位还原为false 那么好,既然上面的方法作用是清…

Burp Suite 实战指南:Proxy 捕获与修改流量、HTTP History 筛选与分析

声明! 学习视频来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关&a…

12月第1周AI资讯

阅读时间:3-4min 更新时间:2024.12.2-2024.12.6 目录 OpenAI CEO Sam Altman 预告“12天OpenAI”系列活动 腾讯HunyuanVideo:130亿参数的开源视频生成模型 李飞飞的World Labs发布空间智能技术预览版 中科院联手腾讯打造“AI带货王”AnchorCrafter OpenAI CEO Sam Alt…

服务器带宽与数据安全的重要性与作用

服务器带宽指的是服务器与外部网络通信的能力,即服务器发送和接收数据的速率。带宽越大,服务器在同一时间内能够处理的数据量就越多,数据传输的速度和稳定性也就越高。在数字化时代,企业对于数据的依赖程度日益加深,无…

YoloV8实战:使用Yolo训练Objects365数据集

摘要 预训练模型在提高训练成绩上是非常有效,大家通常使用COCO数据集训练的模型做为预训练模型,在小型数据集做实验发现,使用COCO数据集训练的预训练模型比没有使用预训练模型的得分能高出2%mAP,同时,如果使用Objects365做预训练,能比没有使用预训练的模型高出4%的mAP,…

从零开始学TiDB(1) 核心组件架构概述

首先TiDB深度兼容MySQL 5.7 1. TiDB Server SQL语句的解析与编译:首先一条SQL语句最先到达的地方是TiDB Server集群,TiDB Server是无状态的,不存储数据,SQL 发过来之后TiDB Server 负责 解析,优化,编译 这…

记录一次使用git无权限的问题排查

正常的配置了公私钥之后,在gitlab中也存储了配对的公钥,但当使用git clone 时,总是报无权限 由于在这台机器中添加了多个公私钥,有点复杂,我们可以使用命令 ssh -vvvT 调试一下 ssh -vvvT yourGitlabAddr

VsCode运行Ts文件

1. 生成package.json文件 npm init 2. 生成tsconfig.json文件 tsc --init 3. Vscode运行ts文件 在ts文件点击右键执行Run Code,执行ts文件

python调用GPT-4o实时音频 Azure OpenAI GPT-4o Audio and /realtime

发现这块网上信息很少,记录一下 微软azure入口 https://learn.microsoft.com/zh-cn/azure/ai-services/openai/realtime-audio-quickstart?pivotsprogramming-language-ai-studio sdk文档 https://github.com/azure-samples/aoai-realtime-audio-sdk?tabread…

fastadmin 后台插件制作方法

目录 一:开发流程 二:开发过程 (一):后台功能开发 (二):功能打包到插件目录 (三):打包插件 (四):安装插件…

Kafka单机及集群部署及基础命令

目录 一、 Kafka介绍1、kafka定义2、传统消息队列应用场景3、kafka特点和优势4、kafka角色介绍5、分区和副本的优势6、kafka 写入消息的流程 二、Kafka单机部署1、基础环境2、iptables -L -n配置3、下载并解压kafka部署包至/usr/local/目录4、修改server.properties5、修改/etc…

Docker部署的gitlab升级的详细步骤(升级到17.6.1版本)

文章目录 一、Gitlab提示升级信息二、老版本的docker运行gitlab命令三、备份老版本Gitlab数据四、确定升级路线五、升级(共分3个版本升级)5.1 升级第一步(17.1.2 > 17.3.7)5.2 升级第二步(17.3.7 > 17.5.3)5.3 升级第三步(17.5.3 > 17.6.1) 六、web端访问gitlab服务 一…

在Java的xml的sql语句里面的某一个参数是list集合的时候

经常在Java里面,遇到这样的问题,sql的一个查询语句,它的某一个参数是一个List集合,然而,在xml.mapper文件里面的时候,不知道如何去组成这个查询语句,不知道兄弟们是否经常忘记如何去写这个语句&…