LAMP架构上(一)
第十七课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架构上(一)的更多相关文章
- Netlog 的数据库及 LAMP 架构
Database Sharding@Netlog 详细的描述了 Netlog 数据库架构的演变过程,文章浅显易懂,非常值得学习.本文数据.图片均来自:Database Sharding at Netl ...
- LNMP 与 LAMP 架构的区别及配置解决方案
2014-12-31 10:33| 发布者: digitser| 查看: 5618| 评论: 0|原作者: liangsheng 摘要: LNMP 与 LAMP 架构的区别及配置解决方案 LNMP 的 ...
- Apache web服务器(LAMP架构)(week3_day4)--技术流ken
apache介绍 1).世界上使用率最高的网站服务器,最高时可达70%:官方网站:apache.org 2).http 超文本协议 HTML 超文本标记语言 3).URL 统一资源定位符 http:/ ...
- 末学者笔记--apache编译安装及LAMP架构上线
apache介绍 一.Apache的三种工作模式 Apache一共有3种稳定的MPM模式(多进程处理模块),它们分别是prefork.worker.event.http-2.2版本的httpd默认的m ...
- Apache web服务器(LAMP架构)
Apache web服务器(LAMP架构) apache介绍 1).世界上使用率最高的网站服务器,最高时可达70%:官方网站:apache.org 2).http 超文本协议 HTML 超文本标记语言 ...
- LAMP架构(三)
第十九课 LAMP架构(三) 目录 一.配置防盗链 二.访问控制Directory 三.访问控制FilesMatch 四.限定某个目录禁止解析php 五.限制user_agent 六.php相关配置 ...
- LAMP架构(二)
第十八次课 LAMP架构(二) 目录 一.Apache默认虚拟主机 二.Apache用户认证 三.域名跳转 四.Apache访问日志 五.访问日志不记录静态文件 六.访问日志切割 七.静态元素过期时间 ...
- rhel6+apache2.4+mysql5.7+php5.6部署LAMP架构
rhel6+apache2.4+mysql5.7+php5.6部署LAMP架构 2017年10月01日 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~准备阶段~~~~~~~~~~~~~ ...
- Linux LAMP架构搭建
一.部署LAMP基本架构 1.L(linux)A(apache)M(mysql)P(php) 2.稳定版本(mysql5.1,php5.3,apache2.2) 3.安装顺序,mysql-->a ...
随机推荐
- meterpreter 渗透用法
获取凭证 hashdump模块(post)可以从SAM数据库中导出本地用户账号,credential_collector脚本(post/windows/gather/credentials)也可以从目 ...
- Ubuntu编译Android源码步骤
Android4.4源码编译 需要准备以下文件: 源码包名:x4412_kitkat_rtm.tar.bz2 Jdk版本为jdk1.6.0_27 gcc 4.4 g++ 4.4 第一步:安装Ubunt ...
- Weighted Quick Union
Weighted Quick Union即: 在Quick Union的基础上对结点加权(weighted),在parent[i]基础上增加一个size[i]. 用来存储该结点(site)的所有子结点 ...
- 来自docker的嚎叫
好吧, 这是我第二次玩这个玩意了, 其实我现在这家公司是没有接触到docker的, 因此对它也是半桶水的状态, 之前有朋友叫我写过shell去离线部署它, 部署都那样不值一提, 后来到我第二次去接触它 ...
- 深度解析vuex
1.什么是vuex? vuex 是一个专为 Vue.js 应用程序开发的状态管理模式(通俗一点的说Vuex就是存储数据的工具,类似于cookie.sessionStorage.localStorage ...
- 复旦大学2017--2018学年第一学期高等代数I期末考试情况分析
一.期末考试成绩班级前十名 郭宇城(100).魏一鸣(93).乔嘉玮(92).刘宇其(90).朱柏青(90).王成文健(90).方博越(88).熊子恺(88).张君格(88).崔镇涛(87).史书珣( ...
- XGpio函数
头文件 #include"xgpio.h" int XGpio_Initialize(XGpio * InstancePtr, u16 DeviceId) 功能:初始化GPIO 参 ...
- 关系数据库、NoSQL和NewSQL数据库产品分类
- 记 Java 各版本新特性
Java 8: Lambda 表达式: (paramList) -> expression; 或者 (paramList) -> {statments;} 演示用例: public int ...
- vue--一些预设属性
Babel=> 转换工具,将ES6转换成ES5的转换工具.有些浏览器不支持ES6语法: router=> 路由管理器: vueX=> 一个仓库,存储状态信息: CSS pre-pro ...