第十七课LAMP架构上(一)

目录

一、LAMP架构介绍

二、MySQL、MariaDB介绍

三、MySQL安装

四、MariaDB安装

五、Apache安装

六、安装PHP5

七、安装PHP7

八、Apache和PHP结合

九、扩展链接

一、LAMP架构介绍

LAMP是Linux、Apache、MySQL、PHP的简称。linux是操作系统、apache提供web服务、mysql用来存储数据、php是一种脚本语言。LAMP组成的各组件都是开源软件,因此可以很方便的获取,使得这些组件广泛使用,并不断完善发展。

LAMP的工作原理

浏览器向服务器发送http请求,服务器 (Apache) 接受请求,由于php作为Apache的组件模块也会一起启动,它们具有相同的生命周期。Apache会将一些静态资源保存,然后去调用php处理模块进行php脚本的处理。脚本处理完后,Apache将处理完的信息通过http response的方式发送给浏览器,浏览器解析,渲染等一系列操作后呈现整个网页。

php和mysql之间是动态请求(如用户的登录操作就会用到)

而如果只是查看图片就是静态请求,apache可以直接解析。不会用到php和mysql动态请求。(mysql不能存图片等文件)

二、MySQL、MariaDB介绍

MySQL是一个关系型数据库,由mysql ab公司开发,mysql在2008年被sun公司收购(10亿美金),2009年sun公司被oracle公司收购(74亿美金),Mysql最终归入Oracle公司。

MySQL官网https://www.mysql.com。

MySQL5.6变化比较大,5.7性能上有很大提升

Mariadb为MySQL的一个分支,官网https://mariadb.com 最新版本10.2

MariaDB主要由SkySQL公司(现更名为MariaDB公司)维护,SkySQL公司由MySQL原作者带领大部分原班人马创立.

Mariadb5.5版本对应MySQL的5.5,10.0对应MySQL5.6

Mysql的版本介绍

Community 社区版本,Enterprise 企业版,GA(Generally Available)指通用版本,在生产环境中用的,DMR(Development Milestone Release)开发里程碑发布版,RC(Release Candidate)发行候选版本,Beta开放测试版本,Alpha内部测试版本

三、MySQL安装

Myql主要有三种安装方式

1.yum安装,缺少定制功能,安装简单。

2.二进制免编译安装包安装,有足够的可定制性,性能基本也不会损失。安装速度也比较快。推荐使用。

3.源代码编译安装。可以按需定制,可以提供最高的性能,编译耗费的时间长,安装速度慢。

这里以源代码包编译安装为例

1.环境:

CentOS Linux release 7.4.1708 (Core)

mysql-5.6.36.tar.gz

2.依赖包安装

yum -y install gcc gcc-c++ ncurses-devel perl cmake autoconf

3.创建mysql的数据库存放目录

mkdir -p /data/mysql

4、 创建mysql用户及用户组

useradd -r mysql -s /sbin/nologin

id mysql

5.设置mysql的数据库存放目录权限

chown -R mysql:mysql /data/mysql

6.编译安装MySQL

cd /usr/local/src

//下载,地址仅供参考。

wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.36.tar.gz -O /usr/local/src

tar -zxvf mysql-5.6.36.tar.gz

cd mysql-5.6.36

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DSYSCONFDIR=/etc -DDEFAULT_CHARSET=utf8 - DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/data/mysql -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1

echo $?

make && make install

echo $?

7.配置MySQL

7.1 初始化配置

cd /usr/local/mysql

进入安装路径,执行初始化配置脚本,创建系统自带的数据库和表

scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysql --user=mysql

7.2 设置配置文件

\cp ./support-files/my-default.cnf /etc/my.cnf

修改配置文件

vim /etc/my.cnf 修改如下如下内容:

basedir = /usr/local/mysql

datadir = /data/mysql

7.3启动MySQL

添加服务,拷贝服务脚本到init.d目录,并设置开机启动

cp support-files/mysql.server /etc/init.d/mysqld

chkconfig mysqld on

service mysqld start --启动MySQL

ss -nat |grep 3306

LISTEN 0 80 :::3306 ::

LAMP架构上(一)的更多相关文章

  1. Netlog 的数据库及 LAMP 架构

    Database Sharding@Netlog 详细的描述了 Netlog 数据库架构的演变过程,文章浅显易懂,非常值得学习.本文数据.图片均来自:Database Sharding at Netl ...

  2. LNMP 与 LAMP 架构的区别及配置解决方案

    2014-12-31 10:33| 发布者: digitser| 查看: 5618| 评论: 0|原作者: liangsheng 摘要: LNMP 与 LAMP 架构的区别及配置解决方案 LNMP 的 ...

  3. Apache web服务器(LAMP架构)(week3_day4)--技术流ken

    apache介绍 1).世界上使用率最高的网站服务器,最高时可达70%:官方网站:apache.org 2).http 超文本协议 HTML 超文本标记语言 3).URL 统一资源定位符 http:/ ...

  4. 末学者笔记--apache编译安装及LAMP架构上线

    apache介绍 一.Apache的三种工作模式 Apache一共有3种稳定的MPM模式(多进程处理模块),它们分别是prefork.worker.event.http-2.2版本的httpd默认的m ...

  5. Apache web服务器(LAMP架构)

    Apache web服务器(LAMP架构) apache介绍 1).世界上使用率最高的网站服务器,最高时可达70%:官方网站:apache.org 2).http 超文本协议 HTML 超文本标记语言 ...

  6. LAMP架构(三)

    第十九课 LAMP架构(三) 目录 一.配置防盗链 二.访问控制Directory 三.访问控制FilesMatch 四.限定某个目录禁止解析php 五.限制user_agent 六.php相关配置 ...

  7. LAMP架构(二)

    第十八次课 LAMP架构(二) 目录 一.Apache默认虚拟主机 二.Apache用户认证 三.域名跳转 四.Apache访问日志 五.访问日志不记录静态文件 六.访问日志切割 七.静态元素过期时间 ...

  8. rhel6+apache2.4+mysql5.7+php5.6部署LAMP架构

    rhel6+apache2.4+mysql5.7+php5.6部署LAMP架构 2017年10月01日 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~准备阶段~~~~~~~~~~~~~ ...

  9. Linux LAMP架构搭建

    一.部署LAMP基本架构 1.L(linux)A(apache)M(mysql)P(php) 2.稳定版本(mysql5.1,php5.3,apache2.2) 3.安装顺序,mysql-->a ...

随机推荐

  1. count列表中字符出现的次数

    如何count列表中字符出现的次数?可以将其生成一个字典.key是列表中的字符串,value是出现的次数 例如gen = [2, 3, 4, 5, 6, 7, 3, 4, 5, 6, 7, 8, 4, ...

  2. Flip Game (高斯消元 || dfs)

    Flip game is played on a rectangular 4x4 field with two-sided pieces placed on each of its 16 square ...

  3. python 构造一个可以返回多个值的函数

    为了能返回多个值,函数直接return 一个元组就行了 看上去返回了多个值,实际上是先创建了一个元组然后返回的.这个语法看上去比较奇怪,实际上我们使用的是逗号来生成一个元组,而不是用括号 >&g ...

  4. 计算一个字符串的每个字符出现的次数案例——Map集合

    其中,字符的包装类是Character;字符串包装类是String: 遍历字符串转换的数组,每个元素都是一个字符,看创建的这个集合有木有,一开始肯定是没有的其实,字符作为key,所以判断的是这个创建的 ...

  5. Oarcle之视图

    视图 什么是视图? (在 SQL 中,视图是基于 SQL 语句的结果集的可视化的表. 视图包含行和列,就像一个真实的表.视图中的字段就是来自一个或多个数据库中的真实的表中的字段.我们可以向视图添加 S ...

  6. js 二维数组 for 循环重新赋值

    javascript 二维数组的重新 组装 var arr = [[1,2],[3,4],[5,6],[7,8]]; var temp = new Array(); for(var i= 0 ;i&l ...

  7. TCP协议三次握手、四次挥手

    TCP的概述 TCP 把连接作为最基本的对象,每一条 TCP 连接都有两个端点,这种断点我们叫作套接字(socket),它的定义为端口号拼接到 IP 地址即构成了套接字,例如,若 IP 地址为 192 ...

  8. Learning-MySQL【2】:MySQL存储引擎及数据库的操作管理

    一.存储引擎 存储引擎实际上就是如何存储数据.如何为存储的数据建立索引和如何更新.查询数据.存储引擎也可以称为表类型. MySQL提供了插件式(pluggable)的存储引擎,存储引擎是基于表的.同一 ...

  9. R apply函数 三维 array

    参考自:https://www.cnblogs.com/nanhao/p/6674063.html 首先,生成三维数组,注意该三维矩阵为 2*3*4的维度: x=array(1:24,c(2,3,4) ...

  10. mongodb+nodejs

    不能只看mongodb官网文档https://docs.mongodb.com/manual/reference/method/db.collection.findOne/,都是同步接口 要看node ...