环境:
Centos 7.0
Apache 2.2.27
Mysql 5.1.72
libiconv 1.14
##Apache 请自行使用编译安装.内容从我自己的word复制过来的,wold里面是好的,有的地方复制过来就重叠了,看的时候注意下
1 解压mysql
tar zxvf mysql-5.1.72.tar.gz
cd mysql-5.1.72/
[root@fangshaoxia support-files]# useradd-M -s /sbin/nologin mysql
2 新建一个文件填入如下参数,可以直接复制,参数看个人所需求吧,不一定要这些,还有很多参数。
vim 1.txt
./configure \
--prefix=/application/mysql5.1.72 \
--with-unix-socket-path=/application/mysql5.1.72/tmp/mysql.sock\
--localstatedir=/application/mysql5.1.72/data\
--enable-assembler \
--enable-thread-safe-client \
--with-mysqld-user=mysql \
--with-big-tables \
--without-debug \
--with-pthread \
--enable-assembler \
--with-extra-charsets=complex \
--with-readline \
--with-ssl \
--with-embedded-server \
--enable-local-infile \
--with-plugins=partition,innobase \
--with-mysqld-ldflags=-all-static \
--with-client-ldflags=-all-static
3 开始编译mysql
cat 1.txt | bash
提示:
checkingfor termcap functions library... configure: error: No curses/termcap libraryfound
解决:yum install ncurses-static.x86_64 -y
[root@fangshaoxia mysql-5.1.72]# echo $?
0
##查看是否有错误,如果非零说明有错误
[root@fangshaoxia mysql-5.1.72]# make
[root@fangshaoxia mysql-5.1.72]# echo $?
[root@fangshaoxia mysql-5.1.72]#make install
[root@fangshaoxia mysql-5.1.72]# echo $?
[root@fangshaoxia mysql-5.1.72]# cd support-files/
[root@fangshaoxia support-files]# cp my-medium.cnf /etc/my.cnf
[root@fangshaoxia support-files]# cd /application/
[root@fangshaoxia application]# ln -s /application/mysql5.1.72/ mysql
##调优去版本号
[root@fangshaoxia bin]# cd /application/mysql/bin/
[root@fangshaoxia bin]# mkdir /application/mysql/data -p
提示:这里的路径一定要和上面编译的路劲一样否则会出错
[root@fangshaoxiabin]#./mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data --user=mysql
提示:mysql_install_db里还有其他参数可以通过”./mysql_install_db --help”,一定不能忘记”./”
[root@fangshaoxiabin]# cd /application/
[root@fangshaoxiaapplication]# chown -R mysql mysql5.1.72/
[root@fangshaoxiabin]# echo "export PATH=/application/mysql5.1.72/bin/:$PATH" >>/etc/profile
[root@fangshaoxiabin]# source /etc/profile
[root@fangshaoxia support-files]# cd /home/tools/LAMP/mysql-5.1.72/support-files/
[root@fangshaoxiasupport-files]# cp mysql.server /etc/init.d/mysqld
[root@fangshaoxia support-files]# chmod +x /etc/init.d/mysqld
[root@fangshaoxia support-files]#/etc/init.d/mysqld start
[root@fangshaoxia support-files]# chkconfig --add mysqld
[root@fangshaoxia support-files]# chkconfig mysqld on
[root@fangshaoxia support-files]#mysql_secure_installation
提示:出现的问题看情况和需求而定
出现两个OK,而且没有其他问题就是好了,安全初始化成功
[root@fangshaoxia support-files]# mysql -uroot -p
##输入前面设置的密码就可以进入mysql了
下面开始安装PHP
1 解压
[root@fangshaoxia LAMP]# tar zxvf php-5.3.27.tar.gz
[root@fangshaoxia LAMP]# tar zxvf libiconv-1.14.tar.gz
[root@fangshaoxia LAMP]# cd libiconv-1.14/
[root@fangshaoxia libiconv-1.14]#./configure --prefix=/usr/local/libiconv
[root@fangshaoxia libiconv-1.14]#make
提示:错误./stdio.h:1010:1: error: ‘gets’undeclared here (not in a function)
_GL_WARN_ON_USE (gets, "gets is asecurity hole - use fgets instead");
解决:
[root@fangshaoxia libiconv-1.14]# vim srclib/stdio.in.h
将698行的代码:_GL_WARN_ON_USE (gets, "gets is a security hole - use fgetsinstead");
替换为:
#if defined(__GLIBC__)&& !defined(__UCLIBC__) && !__GLIBC_PREREQ(2, 16)
_GL_WARN_ON_USE (gets, "gets is asecurity hole - use fgets instead");
#endif
##这个问题centos6.8里没有遇到过
[root@fangshaoxia LAMP]# cd php-5.3.27/
[root@fangshaoxia php-5.3.27]# yum install libxml2-devel.x86_64 libxml2.x86_64 openssl-devel.x86_64 libcurl-devel.x86_64 libjpeg-turbo.x86_64 libjpeg-turbo-devel.x86_64 png* libpng-devel.x86_64 freetype.x86_64 freetype-devel.x86_64 libxslt-devel.x86_64 libxslt.x86_64
##以上是安装PHP所必须的包,一个不能落下
2 新建一个文件填入如下参数,可以直接复制,参数看个人所需求吧,不一定要这些,还有很多参数。
[root@fangshaoxia php-5.3.27]# vim 1.txt
./configure \
--prefix=/application/php5.3.27 \
--with-apxs2=/application/apache/bin/apxs \
--with-mysql=/application/mysql \
--with-xmlrpc \
--with-openssl \
--with-zlib \
--with-freetype-dir \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-iconv=/usr/local/libiconv \
--enable-short-tags \
--enable-sockets \
--enable-zend-multibyte \
--enable-soap \
--enable-mbstring \
--enable-static \
--enable-gd-native-ttf \
--with-curl \
--with-xsl \
--enable-ftp \
--with-libxml-dir
##上面apache的路劲和mysql路径必须正确。
[[email protected]]# make && make installmake
[[email protected]]# cd /application/
[root@fangshaoxia application]# ln -s php5.3.27/ php
[root@fangshaoxia application]# cd -
/home/tools/LAMP/php-5.3.27
[root@fangshaoxia php-5.3.27]# cp php.ini-production /application/php/lib/php.ini
4编辑httpd配置文件
[root@fangshaoxia php-5.3.27]# cd /application/apache/conf/
[root@fangshaoxia conf]# vim httpd.conf
DirectoryIndex index.html index.php
##在169行添加index.php
AddTypeapplication/x-httpd-php .php .phtml(注意.php和.phtml的空格)
AddTypeapplication/x-httpd-php-source .phps(注意.phps前的空格)
##在311行添加上面两个配置
去站点下添加一个index.php页面,测试PHP和mysql的工作状态是否OK
vim index.php
//$link_id=mysql_connect('主机名','用户','密码');
$link_id=mysql_connect('localhost','root','*******') or mysql_error();
if($link_id){
echo "mysqlsuccessful by fangshaoxiade lake !";
}else{
echo mysql_error();
}
?>
[root@fangshaoxia num1]# /application/apache/bin/apachectl graceful