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

LAMP架构介绍

LAMP架构介绍

LAMP是 Linux+Apache(httpd)+MySQL+PHP的简称,即把Apache(httpd)、MySQL以及PHP安装在Linux系统上,Apache(httpd)是最常用的web服务器软件,MySQL是比较小型的数据库软件,PHP是脚本语言(Google、淘宝、百度、51cto博客、猿课论坛),三个角色可以在一台机器上,也可以分开( httpd 和 PHP 要在一起).

httpd、PHP、MySQL三者是如何工作的

071422_Il88_3708406.png

Apache和PHP是一个整体,Apache不能直接和MySQL去连接,只能通过PHP这个模块去MySQL中拿数据,拿到数据后,PHP把这个结果交给Apache,Apache再交给用户。PHP和MySQL交互数据的操作、行为,称为动态请求。

MySQL、MariaDB介绍

MySQL是一个关系型数据库,MySQL官网https://www.mysql.com/,最新版本5.7GA/8.0DMR

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

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

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

community 社区版,enterprise 企业版,GA(generally available) 通用版,在生产环境中使用,DMR(development milestone release)开发里程碑版本,RC(release candidate) 发行候选版本,Beta 开放测试版本,Alpha 内部测试版本。

MySQL安装

  • MySQL的几个常用安装包:rpm、源码、二进制免编译
  • cd /usr/local/src
  • wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz
  • tar zxvf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz 
  • mv mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql 
  • cd /usr/local/mysql 
  • useradd mysql 
  • mkdir /data/ 
  • ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql 
  • 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 
  • /etc/init.d/mysqld start

安装MySQL

  • 所有的源码包,需要的资源放在 /usr/local/src/ 目录下

075354_FF9V_3708406.png

  • 查看平台,uname-a,x86_64就是64位平台的,i686 i586 就是32位平台的

075605_SewU_3708406.png

  • 下载MySQL包,去码市找到MySQL 5.6版本的链接,然后用wget下载

080539_BmJM_3708406.png

  • 下载完MySQL安装包后,首先需要解压

080634_MTNO_3708406.png

  • 移动目录,并修改名字

080830_hJT7_3708406.png

  • 切换至mysql目录下

080928_HgFO_3708406.png

  • 创建MySQL用户,创建 /data/ 目录,若存在可忽略

081301_Tz1L_3708406.png

  • 初始化

081425_Xzir_3708406.png

  • 出现错误提示,缺少Dumper模块;解决思路:安装缺少的模块或包,模糊搜索模块或包的名称

081852_Iqlf_3708406.png

  • 可以将出现的4个包全部安装上,实际上只需安装perl-Data-Dumper包即可

082408_8Dur_3708406.png

  • 然后再初始化,若出现两个OK即初始化成功,或者执行echo $?命令,是0即成功

082457_DDO6_3708406.png

082746_YZW2_3708406.png

  • 执行失败,是因为缺少 libaio 这个包,# yum install -y libaio
  • 初始化完成后,拷贝配置文件

083641_NS6W_3708406.png

084413_q2jj_3708406.png

084605_22H1_3708406.png

这里看到centos7里默认安装了mariadb-libs包,或者之前安装包连带已经安装过了

然后编辑# vim /etc/my.cnf,修改成datadir=/data/mysql, socket=/tmp/mysql.sock

090756_GB9u_3708406.png

将[mysqld_safe]中的两行注释掉,将!includedir /etc/my.cnf.d 也注释掉,保存退出

091008_9B53_3708406.png

091032_9CoY_3708406.png

  • 自定义启动脚本

先把脚本放到 /etc/init.d/mysqld 中

091148_9f2r_3708406.png

编辑文件#vi /etc/init.d/mysqld ,修改basedir和datadir

091711_8LPb_3708406.png

系统默认权限为755

092039_murP_3708406.png

将mysqld加入到系统服务列表里去

092434_vuk5_3708406.png

  • 启动MySQL服务

092558_Cl5f_3708406.png

092828_pRnH_3708406.png

  • 假若无法将MySQL启动脚本放到/etc/init.d/中去,或者没有这样的而启动模板拷贝,可以这样启动

首先停掉mysqld服务

093315_U5lN_3708406.png

然后指定配置文件所在路径

093621_CpB2_3708406.png

可以用killall命令停掉mysqld服务

093727_5zld_3708406.png

killall命令和kill命令

killall命令是一个还算安全的杀进程的命令,当MySQL在实时读写数据,有些数据保存在内存中而未来得及同步到磁盘里去,使用kill则会直接杀死进程,数据就会丢失;而使用killall,会先停止当前的读写操作,然后将没写入磁盘里的数据慢慢写入进去,直到写完之后才会杀死程序。

扩展

mysql5.5源码编译安装

mysql5.7二进制包安装(变化较大)

转载于:https://my.oschina.net/u/3708406/blog/1590128

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值