nginx + mysql + php相关源码包及安装
nginx + mysql + php安装
引言
完整的搭建一个nginx+php-fpm+mysql的服务器,一直是我向做的,不过一致没有完成过,这次工作需要,终于安装成功了
我列出了我遇到的一些问题,当然可能读者自己尝试的时候还会有些问题,可以贴出来一起讨论讨论。
这里的创建用户组什么的也省略掉了,想看的可以看参考链接里面的内容。
github里面有详细的安装步骤,和用到的大部分软件源码包,下面是github地址
https://github.com/aizuyan/install-php-fpm_nginx_mysql
nginx安装
nginx源码包:nginx,密码:bi79
pcre源码包:pcre,密码:uvqd
zlib源码包:zlib,密码:i6pf
配置里面的--prefix制定了nginx的安装目录,--conf-path制定了nginx配置文件的目录,这里的--with-pcre=后面的目录是pcre的源码包目录,--with-zlib=后面的是zlib源码包的路径。
./configure --prefix=/usr/local --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module --with-pcre=../pcre-8.36 --with-zlib=../zlib-1.2.8
mysql安装
mysql源码包:mysql,密码:7qyu
mysql安装使用的是cmake,没有的自安装,apt-get install cmake
。
安装ncurses-devel,在ubuntu下面是apt-get install apt-get install libncurses5-dev
。
下民命令中的-DCMAKE_INSTALL_PREFIX=后面是mysql的安装目录,-DMYSQL_UNIX_ADDR=后面是监听套接字的路径,默认为/tmp/mysql.sock,-DDEFAULT_CHARSET设置服务器字符集,默认是latin1,-DMYSQL_DATADIR设置mysql数据的存储目录。
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/data/mysqldb -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1
mysql安装完之后启动服务器可能还会有很多问题,下面列几个可能的问题:
配置文件的问题,mysql加载配置文件
my.cnf
的时候有个默认顺序:
a. /etc/my.cnf
b. /etc/mysql/my.cnf
c. /usr/local/mysql/my.cnf
d. ~/my.cnf
因此要是出现一些很奇怪的不好解决的问题一定要先看看是不是加载了你想要mysql加载的配置文件。
下面是我安装的mysql的配置文件参考:[mysqld]
port=3306
socket=/usr/local/mysql/mysql.sock
datadir=/data/mysqldb
character_set_server=utf8
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES[mysql]
socket=/usr/local/mysql/mysql.sock[mysqladmin]
socket=/usr/local/mysql/mysql.sock
php安装
php源码包:php,密码:uip8
freetype源码包:freetype,密码:m5pc
freetype生成验证码的时候会用到(具体的就是imagettftext这个函数)
可能需要安装的:apt-get install curl libcurl3 libcurl3-dev
,apt-get install libpng3 libpng3-dev
,apt-get install libmcrypt4 libmcrypt-dev
下面的安装配置里面。/usr/local/mysql为你安装mysql的目录。
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --enable-pcntl --enable-mysqlnd --enable-opcache --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-shmop --enable-zip --enable-ftp --enable-soap --enable-xml --enable-mbstring --with-mysql=/usr/local/mysql -with-pdo-mysql=/usr/local/mysql --with-pcre-regex --with-iconv --with-zlib --with-mcrypt --with-gd --with-openssl --with-mhash --with-xmlrpc --with-curl --with-imap-ssl --enable-pdo --with-freetype-dir=/usr/local/freetype
安装phpredis扩展
phpredis源码包:phpredis,密码:dvxe
步骤:
a. $tar -zxvf phpredis-2.2.4.tar.gz
b. $cd phpredis-2.2.4
c. $/usr/local/php/bin/phpize
d. $ ./configure --with-php-config=/usr/local/php/bin/php-config
e. $make && make install
f. $vim /usr/local/php/etc/php.ini,添加下面的内容extension="redis.so"
g. 重启php-fpm或者apache
收尾
sbin/php-fpm -c etc/php.ini -y etc/php-fpm.conf -t
这里的php-fpm的-c
参数表示要加在配置文件的位置,-y
表示要加在php-fpm专用配置文件的位置,也可以使用缺省参数,-t
表示测试配置文件是否ok。- mysql安转完了之后要先安装初始数据库
scripts/mysql_install_db --user=mysql --datadir=/data/mysqldb
,--user=
后面的是指定运行mysqld的用户,--datadir=
后面是mysql数据的目录。 support-files/mysql.server
就是mysqld,mysql客户端在bin/mysql
这个位置。
参考链接
http://www.cnblogs.com/suihui/archive/2013/04/13/3018557.html
http://blog.csdn.net/wendi_0506/article/details/39478369
www.cnblogs.com/argb/p/3604340.html
nginx + mysql + php相关源码包及安装的更多相关文章
- CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作
CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作 2018年07月05日 00:28:38 String峰峰 阅读数:2614 使用yum安装的MySQL一般版本比较旧,但 ...
- Linux——【rpm、yun、源码包】安装
RPM包或者安装源码包 在windows下安装一个软件很轻松,只要双击.exe的文件,安装提示连续“下一步”即可,然而linux系统下安装一个软件似乎并不那么轻松,因为我们不是在图形界面下.所以我们要 ...
- Linux学习笔记15—RPM包的安装OR源码包的安装
RPM安装命令1. 安装一个rpm包rpm –ivh 包名“-i” : 安装的意思“-v” : 可视化“-h” : 显示安装进度另外在安装一个rpm包时常用的附带参数有:--force : 强制安装, ...
- zabbix 3.2.2 server端(源码包)安装部署 (一)【转】
环境准备: 操作系统 CentOS 6.8 2.6.32-642.11.1.el6.x86_64 zabbix server 172.16.10.150 zabbix agent 172.16.10. ...
- 源码包的安装、rsync同步、inotify监测
一.源码包的安装 1.源码包的作用:yum 使用的是rpm包,rpm包安装的不能指定安装位置 源码包可以按需选择/定制,及时修复bug ,适用于各种平台 2.大致过程:源码包——>make gc ...
- MySQL源码包编译安装
+++++++++++++++++++++++++++++++++++++++++++标题:MySQL数据库实力部署时间:2019年3月9日内容:MySQL源码包进行编译,然后部署MySQL单实例重点 ...
- mysql 5.5源码包安装
注:由于mysql5.5的源码包安装与mysql之前的版本安装方法不同,故写一篇随笔记录.5.5的版本不再是./configure make make install 这里用到了cmake了,cmak ...
- CentOS 7.4 使用源码包编译安装MySQL 5.7.20
使用yum安装的MySQL一般版本比较旧,但是运行稳定.如果想要尝试最新的功能或者需要指定特殊的功能的话,就需要手工进行编译安装了. 一.下载安装包 (一).先下载MySQL源码,网址为:https: ...
- LAMP 环境搭建之源码包编译安装
mysql用的二进制包安装. Apache php 用的源码包 mysql版本5.5.46 Apache版本2.4.7 PHP版本:5.5 mysql安装部分参考了阿铭linux的内容. 这是 ...
随机推荐
- JVM-漫游
Write once, Run Any where. Java Virtual Machine – JVM 的存在让 Java 开发变得简单,并且一次编写多处运行.其实,JVM 就是一个抽象的计算机, ...
- Java 理论与实践: 正确使用 Volatile 变量
Java 语言中的 volatile 变量可以被看作是一种 "程度较轻的 synchronized":与 synchronized 块相比,volatile 变量所需的编码较少,并 ...
- 47个过程(PMBOK2008)
项目管理过程 知识领域 过程组 含义 之前应完成 之后要进行 制定项目章程 整合 启动 编写一份正式批准项目并授权项目经理使用组织资源的文件的过程 无 制定项目管理计划 制定项目管理计划 整合 规划 ...
- MS SQL 2008 发布订阅配置错误总结
最近在配置SQL 2008的发布订阅功能时,遇到了几个小错误,顺便归纳总结一下(以后碰到各类关于发布订阅的错误都将收录.更新到这篇文章),方便自己在以后碰到这类问题时,能够迅速解决问题.毕 ...
- 使用multi-paxos实现日志同步应用
paxos 说multi-paxos之前先简要说一下paxos paxos是在多个成员之间对某个值(提议)达成一致的一致性协议.这个值可以是任何东西.比如多个成员之间进行选主,那么这个值就是主的身份. ...
- 《java JDK7 学习笔记》之接口与多态
1.对于"定义行为"也就是接口,可以使用interface关键字定义,接口中的方法不能操作,直接标示为abstract,而且一定是public修饰的. 类要操作接口,必须使用imp ...
- 《InsideUE4》-7-GamePlay架构(六)PlayerController和AIController
PlayerController:你不懂,伴君如伴虎啊 AIController:上来,我自己动 引言 上文我们谈到了Component-Actor-Pawn-Controller的结构,追溯了ACo ...
- C 语言中 setjmp 和 longjmp
在 C 语言中,我们不能使用 goto 语句来跳转到另一个函数中的某个 label 处:但提供了两个函数——setjmp 和 longjmp来完成这种类型的分支跳转.后面我们会看到这两个函数在处理异常 ...
- 【2016-11-6】【坚持学习】【Day21】【子窗口关闭时,同步关闭它的主窗口(方法二)】
根据上文,在子窗口设置一个委托.然后在子窗口关闭事件,执行委托实例,然后在主窗口增加监听委托的方法.... 想想,本事关闭事件就是一个特殊的委托.那么干嘛还要特意去声明一个新的呢?多此一举. 于是有下 ...
- NOIP复习赛20161117
题目链接:http://files.cnblogs.com/files/candy99/%E9%A2%98%E7%9B%AE1117.pdf A n个等比数列求和公式(都感觉数列忘光了) %1e9+7 ...