Linux下编译安装PHP环境及MySQL配置指南
需积分: 10 83 浏览量
更新于2024-09-11
收藏 231KB DOC 举报
"这篇文档是关于在Linux环境下编译安装PHP环境的教程,特别强调了编译安装MySQL作为基础步骤。"
在构建PHP运行环境时,首要任务是安装数据库服务,这里选择的是MySQL。编译安装MySQL-5.1.46版本的流程如下:
1. 首先解压下载的源码包:`tar zxf mysql-5.1.46.tar.gz`
2. 进入解压后的目录:`cd mysql-5.1.46`
3. 创建专门的用户组和用户,用于运行MySQL服务:`groupadd -g 5050 mysql` 和 `useradd -g mysql -u 5050 -s /sbin/nologin -M mysql`
4. 执行配置脚本以准备编译:`autoreconf --force --install`,`libtoolize --automake --force`,`automake --force --add-missing`
5. 设置编译选项,以优化性能并指定安装路径等:`CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti -fomit-frame-pointer -ffixed-ebp"`
6. 使用`./configure`命令配置编译参数,包括安装路径、连接器标志、字符集、数据存储位置、额外字符集、线程安全客户端、所有插件等:`./configure --prefix=/usr/local/mysql --enable-assembler --with-mysqld-ldflags=-all-static --with-client-ldflags=-all-static --with-unix-socket-path=/usr/local/mysql/tmp/mysql.sock --with-charset=gbk --localstatedir=/data --with-extra-charsets=all --enable-thread-safe-client --with-plugins=all --with-pthread`
7. 对于SUSE系统,可能需要修改client的链接器标志:`--with-client-ldflags=all-static-ltinfo`
8. 编译并安装:`make && make install`
9. 安装完成后,切换到/usr/local/mysql目录下,设置权限:`cd /usr/local/mysql`,`chown -R mysql:mysql .`,`chown -R mysql:mysql/data`
10. 初始化数据库:`bin/mysql_install_db --user=mysql`
11. 复制配置文件到系统目录:`cp share/mysql/my-large.cnf /etc/my.cnf`
12. 更新动态库配置文件,添加MySQL库路径:`echo "/usr/local/mysql/lib/mysql">>/etc/ld.so.conf`
13. 刷新动态库缓存:`ldconfig`
14. 添加MySQL二进制路径到系统PATH环境变量:`echo "export PATH=$PATH:/usr/local/mysql/bin" >> ~/.bashrc`
完成MySQL的编译安装后,接下来就可以编译安装PHP了。这个过程通常包括以下步骤:
1. 获取PHP源代码并解压。
2. 配置编译选项,确保包含MySQL支持和其他必要的扩展,如`--with-mysqli`,`--with-pdo-mysql`,`--with-zlib`,`--with-iconv`等。
3. 编译并安装PHP。
4. 配置php.ini文件,根据实际需求调整PHP配置。
5. 安装其他必要的Web服务器(如Apache或Nginx)并配置与PHP的集成,例如通过mod_php或fastcgi。
6. 重启Web服务器使配置生效。
通过这个详细的编译安装过程,你可以获得一个完全定制且优化过的PHP环境,适应特定的Linux系统需求,为后续的Web开发和应用部署打下坚实的基础。
2014-10-30 上传
2021-01-09 上传
点击了解资源详情
2020-10-25 上传
2017-08-13 上传
2020-12-19 上传
2021-01-20 上传
2021-01-10 上传
2016-05-02 上传
aa3322052
- 粉丝: 0
- 资源: 10
最新资源
- Aspose资源包:转PDF无水印学习工具
- Go语言控制台输入输出操作教程
- 红外遥控报警器原理及应用详解下载
- 控制卷筒纸侧面位置的先进装置技术解析
- 易语言加解密例程源码详解与实践
- SpringMVC客户管理系统:Hibernate与Bootstrap集成实践
- 深入理解JavaScript Set与WeakSet的使用
- 深入解析接收存储及发送装置的广播技术方法
- zyString模块1.0源码公开-易语言编程利器
- Android记分板UI设计:SimpleScoreboard的简洁与高效
- 量子网格列设置存储组件:开源解决方案
- 全面技术源码合集:CcVita Php Check v1.1
- 中军创易语言抢购软件:付款功能解析
- Python手动实现图像滤波教程
- MATLAB源代码实现基于DFT的量子传输分析
- 开源程序Hukoch.exe:简化食谱管理与导入功能