转自http://www.zjmainstay.cn/lamp-config

本文记录了我自己配置LAMP的全过程,借此记录一下,同时希望能够帮助一下需要帮助的LINUX新人,跟我一起学习,一起进步。

MySQL安装全过程

  • 源码包来自:http://distfiles.macports.org/mysql5/
  • $cd ~/Download
  • $wget http://distfiles.macports.org/mysql5/mysql-5.1.60.tar.gz
  • $chmod +x mysql-5.1.60.tar.gz
  • $tar zxvf mysql-5.1.60.tar.gz
  • $cd mysql-5.1.60
  • $su
  • 输入密码:
  • #./configure --prefix=/usr/local/mysql --with-extra-charsets=all --with-unix-socket-path=/usr/local/mysql/var/mysql.sock --with-named-curses-libs=/usr/lib/libncursesw.so
  • #make
  • 提示错误:exec: g++: not found
  • 原因:缺少gcc-c++
  • 解决:yum install gcc-c++
  • #yum install gcc-c++
  • #./configure --prefix=/usr/local/mysql --with-extra-charsets=all --with-unix-socket-path=/usr/local/mysql/var/mysql.sock --with-named-curses-libs=/usr/lib/libncursesw.so
  • #make
  • 提示错误:configure: error: No curses/termcap library found
  • 原因:缺少ncurses-devel
  • 解决:yum install ncurses-devel
  • #yum install ncurses-devel
  • #./configure --prefix=/usr/local/mysql --with-extra-charsets=all --with-unix-socket-path=/usr/local/mysql/var/mysql.sock --with-named-curses-libs=/usr/lib/libncursesw.so
  • #make
  • #make install
  • `make install 假错`
  • make[4]: Entering directory /mysql-test 运行到这句会有不动几分钟,等待就好。
  • 安装成功结束
  • 复制my.cnf
  • #cp /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
  • 初始化数据库
  • #cd /usr/local/mysql/
  • #./bin/mysql_install_db
  • 添加mysql用户组
  • #groupadd mysql
  • 添加mysql用户,位于mysql用户组
  • #useradd -g mysql mysql
  • 给mysql用户一个密码
  • #passwd mysql
  • 把mysql目录的拥有者设置成mysql
  • #chown -R mysql:mysql *
  • 把mysql启动拷贝到系统默认的目录下
  • #cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysql
  • 启动mysql服务
  • #/etc/init.d/mysql start
  • 创建root用户
  • #/usr/local/mysql/bin/mysqladmin -u root password 123456
  • 登陆mysql管理
  • #./bin/mysql -uroot -p123456

Apache安装全过程

  1. CentOS会自带apache服务,自带apache可以使用service httpd start启动,
  2. 程序目录位于/var/www/html/下面,这里移除系统自带Apache
  3. #rpm -e httpd
  4. 提示gnome-user-share依赖
  5. 下面忽略依赖删除Apache
  6. #rpm -e --nodeps httpd
  7. 源码包来自:
  8. http://www.apache.org/底部
  9. HTTP Server (http://httpd.apache.org/)
  10. #exit
  11. $cd ~/Download
  12. $wget http://mirrors.hust.edu.cn/apache/httpd/httpd-2.2.25.tar.gz
  13. $tar zxvf httpd-2.2.25.tar.gz
  14. $cd httpd-2.2.25
  15. $su
  16. 输入密码:
  17. #./configure --prefix=/usr/local/apache --enable-track-vars --enable-cgi --with-config-file-path=/usr/local/apache/conf --enable-so --enable-rewrite --enable-proxy --enable-ssl
  18. 提示错误:configure: error: ...No recognized SSL/TLS toolkit detected
  19. 原因:确实SSL
  20. 解决:yum -y install openssl openssl-devel
  21. #yum -y install openssl openssl-devel
  22. #./configure --prefix=/usr/local/apache --enable-track-vars --enable-cgi --with-config-file-path=/usr/local/apache/conf --enable-so --enable-rewrite --enable-proxy --enable-ssl
  23. #make
  24. #make install
  25. 安装完成
  26. 启动Apache服务器
  27. #/usr/local/apache/bin/apachectl start
  28. 浏览器访问http://localhost可以看到“It Works!”
  29. 程序目录为:/usr/local/apache/htdocs/
  30. 创建service httpd start启动
  31. #cp /usr/local/apache/bin/apachectl /etc/init.d/httpd

PHP安装全过程

  • 源码包来自http://php.net/downloads.php
  • $cd ~/Download
  • $wget http://us1.php.net/get/php-5.3.27.tar.gz/from/cn2.php.net/mirror
  • $tar zxvf php-5.3.27.tar.gz
  • $cd php-5.3.27
  • $su
  • 输入密码:
  • #./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql/ --with-apxs2=/usr/local/apache/bin/apxs --enable-track-vars --enable-force-cgi-redirect --with-config-file-path=/usr/local/php/etc --with-curl --with-mcrypt=/usr/local/libmcrypt/ --with-mbstring --with-incov --with-gd --with-jpeg-dir=/usr/local/lib --enable-pdo --enable-ssl
  • 提示错误:configure: error: xml2-config not found. Please check your libxml2 installation.
  • 原因:缺少libxml2-devel
  • 解决:yum install libxml2-devel
  • #yum install libxml2-devel
  • #./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql/ --with-apxs2=/usr/local/apache/bin/apxs --enable-track-vars --enable-force-cgi-redirect --with-config-file-path=/usr/local/php/etc --with-curl --with-mcrypt=/usr/local/libmcrypt/ --with-mbstring --with-incov --with-gd --with-jpeg-dir=/usr/local/lib --enable-pdo --enable-ssl
  • 提示错误:configure: error: Please reinstall the libcurl distribution -
  • easy.h should be in /include/curl/
  • 原因:curl-devel没安装
  • 解决:yum install curl-devel
  • #yum install curl-devel
  • #./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql/ --with-apxs2=/usr/local/apache/bin/apxs --enable-track-vars --enable-force-cgi-redirect --with-config-file-path=/usr/local/php/etc --with-curl --with-mcrypt=/usr/local/libmcrypt/ --with-mbstring --with-incov --with-gd --with-jpeg-dir=/usr/local/lib --enable-pdo --enable-ssl
  • 错误:configure: error: jpeglib.h not found.
  • 解决:yum install libjpeg-devel libpng-devel
  • #yum install libjpeg-devel libpng-devel
  • #./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql/ --with-apxs2=/usr/local/apache/bin/apxs --enable-track-vars --enable-force-cgi-redirect --with-config-file-path=/usr/local/php/etc --with-curl --with-mcrypt=/usr/local/libmcrypt/ --with-mbstring --with-incov --with-gd --with-jpeg-dir=/usr/local/lib --with-png-dir=/usr/local/lib --enable-pdo --enable-ssl
  • 错误:configure: error: mcrypt.h not found. Please reinstall libmcrypt.
  • 解决:CentOS使用yun install libmcrypt安装提示没包,因此需要下载libmcrypt源码包,手动安装
  • 项目地址:http://sourceforge.net/projects/mcrypt/files/Libmcrypt/
  • 回到Download目录
  • #cd ..
  • #wget http://jaist.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz
  • #tar zxvf libmcrypt-2.5.8.tar.gz
  • #cd libmcrypt-2.5.8
  • #./configure --prefix=/usr/local/libmcrypt
  • #make
  • #make install
  • 重新进入php目录
  • #cd ../php-5.3.27
  • #./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql/ --with-apxs2=/usr/local/apache/bin/apxs --enable-track-vars --enable-force-cgi-redirect --with-config-file-path=/usr/local/php/etc --with-curl --with-mcrypt=/usr/local/libmcrypt/ --with-mbstring --with-incov --with-gd --with-jpeg-dir=/usr/local/lib --with-png-dir=/usr/local/lib --enable-pdo --enable-ssl
  • #make
  • #make install
  • #cp php.ini-development /usr/local/php/lib/php.ini
  • #vi /usr/local/apache/conf/httpd.conf
  • 1、在最后加入(:$(冒号$)可以跳到文件最后一行):
  • AddType application/x-httpd-php .php
  • 2、修改文件访问顺序(Line 168):
  • DirectoryIndex index.php index.html
  • 提示:vi +168 /usr/local/apache/conf/httpd.conf 可以打开文件,并且指针停留在168行,:set nu(冒号set nu)可以显示行号。
  • 安装成功Apache已经启动了服务器,现在关闭,然后重新启动,使用restart我遇见了php依然没识别的问题,所以最好用stop停止再启动
  • #/usr/local/apache/bin/apachectl stop
  • #/usr/local/apache/bin/apachectl start
  • 创建第一PHP文件
  • #vi /usr/local/apache/htdocs/index.php
  • <?php
  • phpinfo();
  • ?>
  • 在浏览器访问http://localhost 会看到phpinfo输出的信息,证明php成功解析。
  • PHP解析成功后还需要测试PHP和MySQL数据库连通情况
  • 前面没有启动mysql则使用 /etc/init.d/mysql start启动服务器
  • #/etc/init.d/mysql start
  • #/usr/local/mysql/bin/mysql -uroot -p123456
  • mysql>show databases;
  • mysql>use test;
  • mysql>CREATE TABLE tb_test(
  • >id int(11) auto_increment not null,
  • >name varchar(255) not null,
  • >PRIMARY KEY(id)
  • >);
  • mysql>INSERT INTO tb_test(name) VALUES('hzg'),('Zjmainstay');
  • mysql>SELECT * FROM tb_test;
  • 确认数据库表tb_test有两行数据即可。
  • 创建PHP测试程序db_test.php
  • #vi /usr/local/apache/htdocs/db_test.php
  • <?php
  • $db = mysql_connect("localhost","root","123456") or die("Can not connect database!");
  • mysql_select_db("test", $db) or die("Can not select database!");
  • mysql_query("set names utf8", $db) or die("Can not set names!");
  • $sql = "SELECT * FROM tb_test";
  • $res = mysql_query($sql, $db);
  • if(!$res){
  • die("Query error" . mysql_error($db));
  • }else {
  • $format = 'Id=%s, Name=%s<br />';
  • while($row = mysql_fetch_assoc($res)){
  • echo sprintf($format, $row['id'], $row['name']);
  • }
  • }
  • ?>
  • 保存,并在浏览器端执行http://localhost/db_test.php
  • 提示错误:Can not connect to local MySQL server through socket '/usr/local/mysql/var/mysql.sock'
  • 将localhost改成127.0.0.1后运行正常
  • 原因:var目录没权限,无法写入mysql.sock
  • 解决:chmod 0755 /usr/local/mysql/var/
  • #ls /usr/local/mysql/var/
  • 打印结果为空
  • 授权0755
  • #chmod 0755 /usr/local/mysql/var/
  • 授权成功重启服务
  • #/etc/init.d/mysql restart
  • 再次查看var目录
  • #ls /usr/local/mysql/var/
  • 可以看到此时有数据了,而且有mysql.sock
  • 再次运行localhost为服务器的db_test.php程序,执行成功。
												

Linux下MySQL、Apache、PHP源码安装全程实录(CentOS 6.4)的更多相关文章

  1. linux下MySQL 5.6源码安装

    linux下MySQL 5.6源码安装 1.下载:当前mysql版本到了5.6.20 http://dev.mysql.com/downloads/mysql 选择Source Code 2.必要软件 ...

  2. linux应用之apache的源码安装(centos)

    第一部分:前期准备 需要下载的东西 下载 Apache 源码包  下载地址: http://httpd.apache.org/download.cgi                          ...

  3. linux下PostgreSQL数据库的源码安装

    实验环境>>>>>>>>>>>>>>>>>>操作系统:CentOS release 6.3 ...

  4. CentOS 6.3下MySQL 5.6源码安装

    Linux操作系统:CentOS 6.3 1:下载:当前mysql版本到了5.6.10 下载地址:http://dev.mysql.com/downloads/mysql/5.6.html#downl ...

  5. linux下hadoop2.6.1源码64位的编译

    linux下hadoop2.6.1源码64位的编译 一. 前言 Apache官网上提供的hadoop本地库是32位的,如果我们的Linux服务器是64位的话,就会现问题.我们在64位服务器执行Hado ...

  6. Linux下USB suspend/resume源码分析【转】

    转自:http://blog.csdn.net/aaronychen/article/details/3928479 Linux下USB suspend/resume源码分析 Author:aaron ...

  7. Linux 系统安装配置PHP服务(源码安装)

    简介: PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言.语法吸收了C语言.Java和Perl的特点,利于学习,使用广泛,主要 ...

  8. linux下Mysql 8.0.19 编译安装

    1 前言 linux下安装MySQL的方式有很多种,包括以仓库的方式安装(yum,apt,zypper),以包的方式安装(rpm,deb),以docker方式安装,从压缩包解压安装,从源码编译安装,这 ...

  9. RHEL Server 6.3下MySQL5.5.25a源码安装

    OS:RHEL Server 6.3 MySQL:mysql-5.5.25a.tar.gz 相关依赖包: ncurses-5.9.tar.gz bison-2.5.tar.gz 安装MySQL 一.安 ...

随机推荐

  1. Network | Public-key cryptography

    公开密钥加密public-key cryptography,也称为非对称(密钥)加密. 非对称密钥,是指一对加密密钥与解密密钥,这两个密钥是数学相关,用某用户密钥加密后所得的信息,只能用该用户的解密密 ...

  2. C# MD5加密(16进制)

    MD5加密(16进制) vs会提示引用 using System.Security.Cryptography; 代码如下: public static string MD5Encrypt32(stri ...

  3. 浅析 JavaScript 中的闭包(-------------------------------------------)

    一.前言 对于 JavaScript 来说,闭包是一个非常强大的特征.但对于刚开始接触的初学者来说它又似乎是特别高深的.今天我们一起来揭开闭包的神秘面纱.闭包这一块也有很多的文章介绍过了,今天我就浅谈 ...

  4. Java使用QRCode.jar生成与解析二维码

    原文V:http://www.cnblogs.com/bigroc/p/7496995.html#3797682 正题:Java使用QRCode.jar生成与解析二维码demo 欢迎新手共勉,大神监督 ...

  5. iOS -- SKTextureAtlas类

      SKTextureAtlas类 继承自 NSObject 符合 NSCodingNSObject(NSObject) 框架  /System/Library/Frameworks/SpriteKi ...

  6. 利用 apache ab 测试服务器性能

    安装步骤:https://blog.csdn.net/ahaaaaa/article/details/51514175 在Windows系统下,打开cmd命令行窗口,定位到apache安装目录的bin ...

  7. webpack 项目实战

    步骤一: npm init 步骤二: npm install -D clean-webpack-plugin css-loader extract-text-webpack-plugin html-w ...

  8. Excel应用----制作二级下拉菜单【转】

    应用: 原始数据源是两列的源数据,那该如何制作二级下拉菜单, 当然可以将这两列的数据源,转换成上面的那种格式,再用上面的方法来制作. 今天教大学的方法是直接通过这种两列式的数据源来制作下拉菜单,如果A ...

  9. Ubuntu 登陆异常-输入正确的密码后还会返回到登陆界面的问题

    问题表现: 启动到了登陆界面,输入对应的密码,发现一闪黑屏有返回到登陆界面,如此往复. 解决方法: 开机后在登陆界面按下shift + ctrl + F1进入tty命令行终端登陆,可以查看用户主目录下 ...

  10. POJ 3469(Dual Core CPU-最小割)[Template:网络流dinic V2]

    Language: Default Dual Core CPU Time Limit: 15000MS   Memory Limit: 131072K Total Submissions: 19321 ...