Centos编译安装PHP7+Nginx1.9+MySQL5.7
来源:互联网 发布:大众软件 故事合集 编辑:程序博客网 时间:2024/05/22 03:02
资源下载:http://pan.baidu.com/s/1c80Qtw密码wuyh
一、MySQL编译安装
1、卸载旧版本
使用下面命令检查系统是否安装MySQL Server
rpm -qa | grep mysql
假如存在通过下面的命令来卸载
rpm-e mysql //普通卸载方式rpm -e --nodeps mysql //强力删除方式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
2、安装boost库
使用下面的命令检查系统是否存在安装boost
rpm -qa boost*
假如存在通过下面的命令来卸载
yum -y remove boost-*
下载boost_1_59_0.tar.gz必须使用1.59.0版本
把源码复制到
/usr/local/boost/目录下
3、安装MySQL
安装编译代码需要的依赖包
yum -y install gcc-c++ ncurses-devel cmake make perl gcc autoconf automake zlib libxml libgcrypt libtool bison
下载MySQL5.7.10
cd /usr/local/srcwget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.10.tar.gztar xvf mysql-5.7.10.tar.gzcd mysql-5.7.10
创建用户,组
groupadd mysqlmkdir /usr/local/mysqlmkdir /usr/local/mysql/datauseradd -g mysql -d /usr/local/mysql mysql
编译mysql
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DMYSQL_UNIX_ADDR=/usr/local/mysql/tmp/mysql.sock -DMYSQL_USER=mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DENABLED_LOCAL_INFILE=ON -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost
安装
make && make install
初始数据库
cd /usr/local/mysql/bin./mysqld --initialize --user=mysql --basedir=/home/mysql --datadir=/home/mysql/data
一定要记住初始密码
调整配置文件和环境变量参数
将默认生成的my.cnf备份
mv /etc/my.cnf /etc/my.cnf.bak
cd /usr/local/mysql/support-files
拷贝配置文件模板为新的mysql配置文件
cp my-default.cnf /etc/my.cnf
可按需修改新的配置文件选项, 不修改配置选项, mysql则按默认配置参数运行.
如下是我修改配置文件/etc/my.cnf, 用于设置编码为utf8以防乱码
[mysqld]character_set_server=utf8init_connect='SET NAMES utf8'[client]default-character-set=utf8
注释最后一行代码
# sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
不然进入mysql会报错
复制启动脚本到init.d下
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
增加执行权限
chmod 755 /etc/init.d/mysqld
创建mysql命令文件
ln -s /usr/local/mysql/bin/mysql /usr/bin/
注:没有这个文件就没有mysql命令,不能在任意位置使用mysql 访问数据库
vim /etc/my.cnf
Error: Cannot retrieve metalink for repository: epel. Please verify its path and try again
处理很简单,修改文件“/etc/yum.repos.d/epel.repo”, 将baseurl的注释取消, mirrorlist注释掉。即可
访问数据库
mysql -uroot -p
密码为刚才生成的密码
修改默认密码
alter user 'root'@'localhost' identified by 'root';
注:不修改默认密码,将不能正常使用sql,必须修改
二、安装php
1、添加
useradd www
2、安装组建扩展
yum install epel-* -yyum install -y wget unzip gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
3、安装libiconv
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gztar zxf libiconv-1.14.tar.gzcd libiconv-1.14
执行
./configure --prefix=/usr
执行
make && make install
注意:
CentOS7编译libiconv会出现
编译libiconv发生./stdio.h:1010:1: 错误: ‘gets’未声明(不在函数内)
解决办法:
cd srclib/ #进到出错文件的目录
sed -i -e '/gets is a security/d' ./stdio.in.h #编辑出错文件
cd ../ #回到编译对象目录
make #重新Make
wget http://php.net/distributions/php-7.0.0.tar.bz2tar -jxvf php-7.0.0.tar.bz2cd php-7.0.0
执行
./configure --prefix=/usr/local/php70 --sysconfdir=/usr/local/php70/etc --with-config-file-scan-dir=/usr/local/php70/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www --enable-mbstring --enable-sockets --enable-pcntl --enable-pdo --enable-mysqlnd --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-sysvshm --enable-shmop --with-jpeg-dir=/usr --with-freetype-dir=/usr --with-png-dir=/usr --with-zlib-dir=/usr --with-iconv=/usr/lib --with-gd --with-openssl --enable-opcache=no --enable-zip --enable-bcmath --enable-pcntl --enable-ftp --with-curl
执行
make && make install
执行
cp php.ini-production /usr/local/php70/etc/php.inicp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm cp sapi/fpm/php-fpm.conf /usr/local/php70/etc/php-fpm.conf cp sapi/fpm/www.conf /usr/local/php70/etc/php-fpm.d/www.confcd ..
sed -i 's#short_open_tag = Off#short_open_tag = On#g' /usr/local/php70/etc/php.ini
chmod +x /etc/init.d/php-fpm
三、安装nginx
1、下载nginx
wget http://nginx.org/download/nginx-1.9.7.tar.gztar -zxvf nginx-1.9.7.tar.gzcd nginx-1.9.7
执行
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
执行
make && make install
2、编辑配置文件
vi /usr/local/nginx/conf/nginx.conf
加上这一段代码
location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
3、启动nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
重启nginx
/usr/local/nginx/sbin/nginx -s reload
查看nginx版本
/usr/local/nginx/sbin/nginx -h
4、启动php
service php-fpm start
四、运行
vim /usr/local/nginx/html/01.php
<?phpphpinfo();?>
- Centos编译安装PHP7+Nginx1.9+MySQL5.7
- CentOS 7 安装 LNMP 环境(PHP7 + MySQL5.7 + Nginx1.10)
- CentOS 7.4 64 yum安装MySQL5.7+Nginx1.12+PHP7.1
- LNMP源码编译安装(centos7+nginx1.9+mysql5.6+php7)
- Centos7使用wget安装PHP7、Mysql5.6、Nginx1.9
- Ubuntu 14.04 安装配置MySQL5.7 PHP7.1 Nginx1.10
- 【最新版lnmp编译安装】编译安装nginx1.10.2最新版、php7.0.12最新版、mysql5.7.16最新版
- 【最新版lnmp编译安装】编译安装nginx1.10.2最新版、php7.0.12最新版、mysql5.7.16最新版
- CentOS 6.2编译安装Nginx1.0.12+MySQL5.5.21+PHP5.3.10
- CentOS 6.3编译安装Nginx1.2.3+MySQL5.5.27+PHP5.3.16
- CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14
- CentOS 6.2编译安装Nginx1.0.12+MySQL5.5.21+PHP5.3.10
- CentOS 6.6编译安装Nginx1.6.2+MySQL5.6.21+PHP5.6.3
- CentOS 7.0编译安装Nginx1.6.0+MySQL5.6.19+PHP5.5.14
- CentOS 6.6编译安装Nginx1.6.2+MySQL5.6.21+PHP5.6.3
- CentOS 6.6编译安装Nginx1.6.2+MySQL5.6.21+PHP5.6.3
- centos编译安装php5.6.20+nginx1.8.1+mysql5.6.17
- CentOS 6.2编译安装Nginx1.0.12+MySQL5.5.21+PHP5.3.10
- spring学习笔记 - 面试题
- UVA 439 Knight Moves
- Openlayers离线加载天地图
- ZOJ 2110 Tempter of the Bone (DFS)
- Android 实现形态各异的双向侧滑菜单 自定义控件来袭
- Centos编译安装PHP7+Nginx1.9+MySQL5.7
- UVA 1600 Patrol Robot
- corn表达式——用于设置定时任务
- iOS 开发 本地通知的使用
- CodeForces 611 A. New Year and Days(水~)
- Java设计模式--策略模式
- web项目初始化操作
- Android Audio Framework 之AudioPolicyService
- Unity3D 5 官方教程:地形引擎