CentOS6 下的PHP,HTTPD,MYSQL等环境搭建
2016-06-27 23:30
337 查看
腾讯云重装了CentOS系统,记录下重装后的环境搭建步骤。
[b]新建用户[/b]
我习惯在/usr/local下建立自己的目录然后把环境全部放在此目录下
切换到sxin用户
[b]下载PHP7,HTTPD24,MYSQL57[/b]
#yum install -y gcc g++ gcc-c++
[b]新建用户[/b]
#useradd sxin #passwd sxin
我习惯在/usr/local下建立自己的目录然后把环境全部放在此目录下
#mkdir /usr/local/sxin #chown sxin:sxin /usr/local/sxin
切换到sxin用户
$cd ~ $mkdir downloads $mkdir downloads/php7 downloads/httpd24 downloads/mysql57 downloads/tools
[b]下载PHP7,HTTPD24,MYSQL57[/b]
$wget http://cn2.php.net/distributions/php-7.0.8.tar.gz $wget http://nginx.org/download/nginx-1.11.1.tar.gz $wget http://zlib.net/zlib-1.2.8.tar.gz $wget http://apache.fayea.com//apr/apr-1.5.2.tar.gz $wget http://apache.fayea.com//apr/apr-util-1.5.4.tar.gz $wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz $wget http://mirrors.hust.edu.cn/apache//httpd/httpd-2.4.20.tar.gz $wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.13.tar.gz $wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.13.tar.gz[/code]
[b]编译安装APR[/b]$./configure --prefix=/usr/local/sxin/tools/apr && make && make install
[b]编译安装APR-Util[/b]$./configure --prefix=/usr/local/sxin/tools/apr-util --with-apr=/usr/local/sxin/tools/apr && make && make install
[b]编译安装PCRE[/b]$./configure --prefix=/usr/local/sxin/tools/pcre && make && make install
[b]编译安装ZLib[/b]$./configure --prefix=/usr/local/sxin/tools/zlib && make && make install
[b]编译安装Nginx[/b]$ ./configure --prefix=/usr/local/sxin/nginx --with-pcre=/home/sxin/downloads/tools/pcre-8.39 --with-zlib=/home/sxin/downloads/tools/zlib-1.2.8 && make && make install 注:这里引用的pcre,zlib的是源码目录 做中转,上传大小限制: client_max_body_size 8M; server { listen 80; server_name localhost; ********** location / { proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://ip:port/; } ********** }
[b]编译安装Apache24[/b]$./configure --prefix=/usr/local/sxin/httpd24 --with-apr=/usr/local/sxin/tools/apr --with-apr-util=/usr/local/sxin/tools/apr-util/ --with-pcre=/usr/local/sxin/tools/pcre/ && make && make install
[b]编译安装Mysql57[/b]#yum install -y cmake git ncurses-devel $cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/sxin/mysql -DSYSCONFDIR=/etc/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_DATADIR=/usr/local/sxin/mysql/data -DWITH_BOOST=boost -DCURSES_LIBRARY=/usr/lib64/libncurses.so -DCURSES_INCLUDE_PATH=/usr/include && make && make install $./mysqld --initialize --user=sxin --basedir=/usr/local/sxin/mysql --datadir=/usr/local/sxin/mysql/data mysql -u root -p连接时 报错 Segmentation fault 修改方法如下: 在MySQL的源代码中,找到这个文件 cmd-line-utils/libedit/terminal.c ,找到这一行 char buf[TC_BUFSIZE]; 将其注释, 然后,在其附近找到变量 area ,将其值修改为 NULL ,也就是 area = NULL. protected int terminal_set(EditLine *el, const char *term) { int i; //char buf[TC_BUFSIZE]; char *area; const struct termcapstr *t; sigset_t oset, nset; int lins, cols; (void) sigemptyset(&nset); (void) sigaddset(&nset, SIGWINCH); (void) sigprocmask(SIG_BLOCK, &nset, &oset); area = NULL; 重新编译安装 $./mysql -u root -p $ALTER USER USER() IDENTIFIED BY ‘123’ #修改密码 允许所有主机访问 Grant all privileges on *.* to 'root'@'%' identified by 'password' with grant option; flush privileges;
[b]编译安装PHP7[/b]#yum install -y libxml2 libxml2-devel.x86_64 $./configure --prefix=/usr/local/sxin/php7 --with-config-file-path=/usr/local/sxin/php7/conf --with-apxs2=/usr/local/sxin/httpd24/bin/apxs --with-pdo-mysql=/usr/local/sxin/mysql --with-zlib-dir=/usr/local/sxin/tools/zlib/ && make &&make install
[b]配置环境变量[/b]#echo 'PATH=$PATH:/usr/local/sxin/mysql/bin/:/usr/local/sxin/httpd24/bin:/usr/local/sxin/nginx/sbin:/usr/local/sxin/php7/bin' >> /etc/profile#source /etc/profile
[b]打包[/b]
现在虽然环境搭建好了,不过问题又来了,如果我又重装系统了 那就要再重新全部来一次。。。太麻烦。 于是我有了一个想法。 然后写一个shell,下次如果再重装系统 我只要执行shell 然后它会全部自动下载,编译安装。那就爽了~。
详情请参考我的另外一篇博文: SHELL实现CentOS下自动下载,编译安装LAMP
相关文章推荐
- Centos6 编译安装Python
- 硬盘安装CentOS 6.2以及添加GRUB启动菜单
- CentOS 6.2实战部署Nginx+MySQL+PHP
- CentOS 7系统配置上的变化解析
- php7 扩展类的写法[2]
- php7 类的方法传参[3]
- php7 读取php.ini[4]
- Aut2Exe编译au3脚本为可执行文件
- CentOS下DB2数据库安装过程详解
- CentOS 6.3下编译安装Ruby 2.0笔记
- 把Lua编译进nginx步骤方法
- Lua中编译执行代码相关的函数详解
- Chrome Visual Studio 2005下的编译过程
- Windows下使用Cygwin编译MySQL客户端
- android的编译和运行过程深入分析
- 在Centos 5.5 上编译安装mysql 5.5.9