CentOS 7 安装MySQL+PHP环境
环境: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/
# 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
# echo $?
0
##查看是否有错误,如果非零说明有错误
# make
# echo $?
#make install
# echo $?
# cd support-files/
# cp my-medium.cnf /etc/my.cnf
# cd /application/
# ln -s /application/mysql5.1.72/ mysql
##调优去版本号
# cd /application/mysql/bin/
# mkdir /application/mysql/data -p
提示:这里的路径一定要和上面编译的路劲一样否则会出错
#./mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data --user=mysql
提示:mysql_install_db里还有其他参数可以通过”./mysql_install_db--help”,一定不能忘记”./”
# cd /application/
# chown -R mysql mysql5.1.72/
# echo "export PATH=/application/mysql5.1.72/bin/:$PATH" >>/etc/profile
# source /etc/profile
# cd /home/tools/LAMP/mysql-5.1.72/support-files/
# cp mysql.server /etc/init.d/mysqld
# chmod +x /etc/init.d/mysqld
#/etc/init.d/mysqld start
# chkconfig --add mysqld
# chkconfig mysqld on
#mysql_secure_installation
提示:出现的问题看情况和需求而定
出现两个OK,而且没有其他问题就是好了,安全初始化成功
# mysql-uroot -p
##输入前面设置的密码就可以进入mysql了
下面开始安装PHP
1 解压
# tar zxvf php-5.3.27.tar.gz
# tar zxvflibiconv-1.14.tar.gz
# cd libiconv-1.14/
#./configure--prefix=/usr/local/libiconv
#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");
解决:
# vimsrclib/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里没有遇到过
# cd php-5.3.27/
# yuminstall 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 新建一个文件填入如下参数,可以直接复制,参数看个人所需求吧,不一定要这些,还有很多参数。
# 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路径必须正确。
# make && make installmake
# cd /application/
# ln -s php5.3.27/ php
# cd -
/home/tools/LAMP/php-5.3.27
# cpphp.ini-production /application/php/lib/php.ini
4编辑httpd配置文件
# cd/application/apache/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前的空格)
wKiom1jgdNfgBX8tAAAc8BZuZ4c199.png
##在311行添加上面两个配置
去站点下添加一个index.php页面,测试PHP和mysql的工作状态是否OK
vim index.php
<?php
//$link_id=mysql_connect('主机名','用户','密码');
$link_id=mysql_connect('localhost','root','*******') or mysql_error();
if($link_id){
echo "mysqlsuccessful by linuxidcde lake !";
}else{
echo mysql_error();
}
?>
# /application/apache/bin/apachectl graceful
页:
[1]