码迷,mamicode.com
首页 > 数据库 > 详细

LAMP架构介绍、MySQL、MariaDB介绍、MySQL安装

时间:2018-05-23 18:06:48      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:Linux

LAMP架构介绍

LAMP是一个简写,包含了4个东西:linux、apache(httpd)、mysql、php

linux操作系统、apache提供wb服务的软件、mysql存储数据的软件、php脚本语言

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

技术分享图片

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

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

MySQL、MariaDB介绍

MySQL是一个关系型数据库,由mysql ab公司开发,mysql在2008年被sun公司收购(10亿刀),2009年sun公司被oracle公司收购(74亿刀)

MySQL官网https://www.mysql.com 最新版本5.7GA/8.0DMR

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

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

mysql安装

MySQL的几个常用安装包:rpm、源码、二进制免编译(免编译比较方便,不用配置,可以指定路径。)

因为二进制免编译比较方便,也足够正常使用,所以我们就使用二进制棉编译

为了方便日后管理,我们统一把安装包下载到/usr/local/src这个目录下来
cd /usr/local/src

技术分享图片

下载安装包,下载的版本为5.6 x86_64
wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz

技术分享图片

解压下载的包
tar zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz

技术分享图片

移动解压完的目录并更改名字为mysql(容易出现的错误,local下已经存在mysql文件,如果这样移动,会变成移动到mysql下,这样就会报错,mv前提前进入local看下是否已存在mysql文件夹)
mv mysql-5.6.36-linux-glibc2.5-x86_64 /usr/local/mysql

技术分享图片

进入mysql目录下可以查看下mysql下有哪些文件

cd /usr/local/mysql
ls

技术分享图片

创建一个data目录,可以看到data目录已经存在,那么就不需要执行命令创建目录
mkdir data

技术分享图片

创建一个mysql用户(名为mysql)
useradd mysql

技术分享图片

安装mysql,进行初始化,指定用户为mysql,指定数据存放地址/data/mysql
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

技术分享图片

这里它提示少了一个perl模块,所以我们需要安装它。如果不知道包名就需要模糊搜索一下,首先这个文件是perl模块的,所以一定包含perl,还包含dumper(不确定大小写就加-i)
yum list |grep perl |grep -i dumper

如下图搜出4个,如果不知道是哪一个就全装上,这里我们知道是第一个包。
技术分享图片

安装所依赖的包
yum install -y perl-Data-Dumper.x86_64

技术分享图片

然后再使用如下命令初始化一下(有时会报错data的父目录不存在,这时在/data/前面加上绝对路径即可)
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

技术分享图片

拷贝mysql的模板配置文件,mysql的配置文件存放在/etc/下,并且名字固定为my.cnf,如果不想存放在这个目录下,那么启动的时候需要指定配置文件(该目录下已存在一个my.cnf文件,我们选择y覆盖)
cp support-files/my-default.cnf /etc/my.cnf

技术分享图片

拷贝启动的脚本
cp support-files/mysql.server /etc/init.d/mysqld

技术分享图片

编辑启动脚本
vi /etc/init.d/mysqld

找到basedir和datadir将内容更改如下:
basedir=/usr/local/mysql
datadir=/usr/locat/mysql/data/mysql

技术分享图片

更改启动脚本的配置文件为755
chmod 755 /etc/init.d/mysqld

技术分享图片

将mysqld加入开启启动
chkconfig --add mysqld

技术分享图片

启动mysql
1.使用命令启动mysql
service mysqld start

技术分享图片

  1. 使用脚本启动
    /etc/init.d/mysqld start

技术分享图片

停止mysql
service mysqld stop

技术分享图片

以命令行的方式启动脚本,--defaults-file指定配置文件,指定用户,指定目录,最后加上&符号,放到后台执行
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql --datadir=/data/mysql &

技术分享图片

以命令行的方式启动的mysql脚本不能直接stop,可以使用killall停止服务

使用killall会停止当前的写读操作,再将没有写入到磁盘中的数据写到磁盘里面去,写完之后再将进程杀死。

如果遇到mysql的进程杀不死,可能说明数据量比较大,在慢慢写入磁盘,这时候不要使用kill -9强制杀死进程,可能会损坏数据。
`killall mysqld``

LAMP架构介绍、MySQL、MariaDB介绍、MySQL安装

标签:Linux

原文地址:http://blog.51cto.com/13658403/2119553

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!