1.0 Mysql 的安装
MySQL的安装方式有4种: yum/rpm包安装 二进制安装 源码编译安装 源码软件结合
二进制包名与源码包名区别如下:
二进制包名: mysql-5.5.32-linux2.6-x86.tar.gz
源 码 包 名: mysql-5.5.32.tar.gz
安装步骤如下:
1、创建mysql用户账号
# useradd -s /sbin/nologin -M mysql
2、进入安装软件的固定目录下载MySQL 软件包
1) # cd /usr/local/src 注:此目录可作为专门存放所有安装软件的固定目录
2) # wget 下载网址(或者是利用工具导进去)
3、解压并移动 MySQL 二进制软件包到指定的安装路径
1) # tar zxvf mysql-5.5.32-linux2.6-x86.tar.gz
2) # mv mysql-5.5.32 /usr/local/mysql
3) # cd /usr/local/mysql
4、初始化 MySQL 配置文件 my.cnf
# /bin/cp support-files/my-large.cnf /etc/my.cnf
注:support-files下有my.cnf的5种不同的配置模板, 在生产环境中这5种不同的配置模板对服务器硬件的要求从低到高依次为:
my-medium.cnf my-small.cnf my-large.cnf my-huge.cnf
my-innodb-heavy-4G.cnf
5、初始化 MySQL 数据库文件
1) # mkdir -p /data/mysql 建立 MySQL 数据文件目录
2) # chown -R mysql:mysql /data/mysql 授权MySQL用户管理 MySQL 的安装目录
3) # ./scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql -- user=mysql
出现两个OK字样,表示初始化成功,否则要解决初始化的问题
echo $? 检查安装情况
6、设置 MySQL 启动脚本
1) # cp ./support-files/mysql.server /etc/init.d/mysqld 拷贝 MySQL 启动脚本到
MySQL 的命令路径
2) # chmod +x /etc/init.d/mysqld 或者
chmod 755 /etc/init.d/mysqld
3) # vim /etc/init.d/mysqld
basedir=/usr/local/mysql
datadir=/data/mysql
7、启动数据库并检查启动是否成功
1) # /etc/init.d/mysqld start 启动
2) # ps aux |grep mysql 或
# netstat -lnptu |grep mysql
检查是否启动成功,如果启动提示有错误,查看错误日志,根据错误日志排除问题
8、查看 MySQL 数据库启动结果日志
MySQL错误日志路径 /data/mysql/www.err 错误日志通常以 主机名. err 来命名
9、设置 MySQL 开机自启
1) # chkconfig --add mysqld 加入到开机自启
2) # chkconfig mysqld on 设置开机自启
3) # chkconfig --list mysqld 检查 MySQL 在系统各运行级别的启动情况
10、配置 mysql 命令的全局使用路径
1) # echo ‘export PATH=/usr/local/mysql/bin:$PATH‘ >> /etc/profile
注:echo 后面是单引号
2) # tail -1 /etc/profile 检查上面添加的配置是否成功
3) # source /etc/profile 立即生效
4) # echo $PATH 查看设置结果
11、登陆 MySQL 测试
# mysql
另外还有其他三种命令登陆方式:
1) # mysql -uroot -p
2) # mysql -uroot
3) # mysql -uroot -p‘密码‘
12、为 MySQL 的root 用户设置密码
# mysqladmin -u root password ‘密码’
# mysql -uroot -p‘密码‘
1.1 Apache 的安装
# cd /usr/local/src/
# wget 二进制包
# tar zxvf httpd-2.2.16.tar.gz
配置编译参数:
# cd httpd-2.2.16
# ./configure \
--prefix=/usr/local/apache2 \
--with-included-apr \
--enable-so \
--enable-deflate=shared \
--enable-expires=shared \
--enable-rewrite=shared \
--with-pcre
--prefix 指定安装到哪里, --enable-so 表示启用DSO [1] --enable-deflate=shared 表示共享的方式编译deflate,后面的参数同理。
error: mod_deflate has been requested but can not be built due to prerequisite failures
解决办法是:
yum install -y zlib-devel
为了避免在make的时候出现错误,所以最好是提前先安装好一些库文件:
yum install -y pcre pcre-devel apr apr-devel
编译,安装:
# make
# make install
以上两个步骤都可以使用 echo $? 来检查是否正确执行,否则需要根据错误提示去解决问题。
1.2 PHP 的安装
# cd /usr/local/src
# wget http://am1.php.net/distributions/php-5.3.27.tar.gz
# tar zxf php-5.3.27.tar.gz
配置编译参数:
# cd php-5.3.27
# ./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-config-file-path=/usr/local/php/etc \
--with-mysql=/usr/local/mysql \
--with-libxml-dir \
--with-gd \
--with-jpeg-dir \
--with-png-dir \
--with-freetype-dir \
--with-iconv-dir \
--with-zlib-dir \
--with-bz2 \
--with-openssl \
--with-mcrypt \
--enable-soap \
--enable-gd-native-ttf \
--enable-mbstring \
--enable-sockets \
--enable-exif \
--disable-ipv6
注:
configure: error: xml2-config not found. Please check your libxml2 installation.
解决办法是: yum install -y libxml2-devel
configure: error: Cannot find OpenSSL‘s <evp.h>
解决办法是: yum install -y openssl openssl-devel
checking for BZip2 in default path... not found
configure: error: Please reinstall the BZip2 distribution
解决办法: yum install -y bzip2 bzip2-devel
configure: error: png.h not found.
解决办法: yum install -y libpng libpng-devel
configure: error: freetype.h not found.
解决办法: yum install -y freetype freetype-devel
configure: error: mcrypt.h not found. Please reinstall libmcrypt.
解决办法: rpm -ivh "rpm 包地址"
yum install -y libmcrypt-devel
因为centos6.x 默认的yum源没有 libmcrypt-devel 包,只能借助第三方yum源。
编译安装:
# make
# make install
拷贝配置文件:
# cp php.ini-production /usr/local/php/etc/php.ini
1.3 apache结合php
Apache主配置文件为:/usr/local/apache2/conf/httpd.conf
vim /usr/local/apache2/conf/httpd.conf
找到:
AddType application/x-gzip .gz .tgz
在该行下面添加:
AddType application/x-httpd-php .php
找到:
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
将该行改为:
<IfModule dir_module>
DirectoryIndex index.html index.htm index.php
</IfModule>
找到:
#ServerName www.example.com:80
修改为:
ServerName localhost:80
1.4 测试LAMP是否成功
启动apache之前先检验配置文件是否正确:
/usr/local/apache2/bin/apachectl -t
如果有错误,请继续修改httpd.conf, 如果是正确的则显示为 “Syntax OK”,
启动apache的命令为:
# /usr/local/apache2/bin/apachectl start
查看是否启动:
# netstat -lnp |grep httpd
tcp 0 0 :::80 :::* LISTEN 7667/httpd
如果有显示这行,则启动了。 也可以使用curl命令简单测试:
# curl localhost
<html><body><h1>It works!</h1></body></html>
测试是否正确解析php:
vim /usr/local/apache2/htdocs/1.php
写入:
<?php
echo "php解析正常";
?>
:wq
# curl localhost/1.php
php解析正常[[email protected] ~]#
显示这样则表示解析正确
初次使用浏览器访问web服务的时候,可能无法访问,这是因为防火墙的缘故。请运行下面的命令:
# iptables -F