LAMP架构介绍
Linux+ Apache(httpd)+ mysql + php 操作系统+外网服务软件 + 存储软件 + 脚本语言(由C开发)
三者工作示意图:
三个角色可以装在一台机器,也可以分开,但是httpd要和php在一起(php是以模块的形式和apache结合在一起的,apache通过php和mysql打交道)
MySql和Mariadb介绍
MySQL是一个关系型数据库,由mysql ab公司开发,mysql在2008年被 sun公司收购,2009年sun公司被oracle公司收购
MySQL官网https://www.mysql.com 最新版本5.7GA/8.0DMR
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
- 源码
- 二进制免编译
安装之前的约定
- 平台选择选择自己合适的平台,查看方式:uname -a
- 资源包及安装包 : /usr/local/src/
- 下载资源地址 : r.aminglinux.com
下面安装都是以二进制免编译包示例
1.下载mysql包到本地目录
先进入/usr/local/src/目录
cd /usr/local/src
安装wget命令
yum install -y wget
获取资源下载到本地
wget http://mirrors.163.com/mysql/Downloads/MySQL-5.6/mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
2.解压
tar xzvf mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
3.改名并移动到 /usr/local/mysql目录下
mv mysql-5.6.39-linux-glibc2.12-x86_64 /usr/local/mysql
4.创建用户
# 进入目录
cd /usr/local/mysql
# 新增用户
useradd mysql
5.创建mysql目录
mkdir /data/
6.指定配置信息进行安装
# 配置指定客户为mysql,数据目录为/data/mysql
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
提示dumper没有安装,先yum搜索再进行安装
# yum搜索:秘诀按照提示未安装的包去搜索
yum list |grep perl |grep -i dumper
# 依次安装下面两个包
yum install -y perl-XML-Dumper
yum install -y perl-Data-Dumper
如果提示/usr/bin/perl: 坏的解释器: 没有那个文件或目录
yum install perl gcc kernel-devel
报错:Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
yum install -y libaio
检查配置参数是否成功的两种方法:
-
配置执行完成检查两个ok
-
查看执行结果,为0时说明执行无误
echo $?
7.拷贝配置文件
模板配置文件 : support-files/my-default.cnf
两种方式:①将模板文件复制过去,②使用/etc/my.cnf默认的文件,效果一致。
1.复制模板方式
# 复制配置模板文件为 /etc/my.cnf
cp support-files/my-default.cnf /etc/my.cnf
# 查看/etc/my.cnf来自哪个rpm包
[root@yolks1 mysql]# rpm -qf /etc/my.cnf
mariadb-libs-5.5.56-2.el7.x86_64
2.修改此修改默认的 /etc/my.cnf
8.拷贝启动脚本
cp support-files/mysql.server /etc/init.d/mysqld
9.修改启动脚本配置文件
10.检查启动脚本权限
[root@yolks1 mysql]# ls -lh !$
ls -lh /etc/init.d/mysqld
-rwxr-xr-x. 1 root root 11K 7月 28 00:18 /etc/init.d/mysqld
检查是否为755(rwxr-xr-x)权限,若不是则修改(默认就是755)
11.添加启动脚本至系统启动服务
chkconfig --add mysqld
12.添加启动脚本至系统启动服务
查看系统启动服务
chkconfig --list
添加到系统启动服务
chkconfig --add mysqld
启动服务的两种方式:
-
命令行启动 (/etc/init.d/mysqld start)
-
服务启动 (service mysqld start)
[root@yolks1 mysql]# service mysqld start Starting MySQL.. SUCCESS!
判断服务是否启动的方式:
-
检查进程是否启动
ps aux |grep mysqld
-
通过查看监控端口号 3306
netstat -lntp
动态指定配置文件所在路径、用户、数据目录启动mysql
/usr/local/mysql/bin/mysqld_safe --default-file=/etc/my.cnf --user=mysql --datadir=/data/mysql &(后台操作)
此方式开启之后关闭比较麻烦,需要杀进程(不太建议)
killall mysqld
// 未找到killall 则通过yum 安装
yum install psmisc
拓展
- 特别不建议使用kill直接杀进程,对数据库系统都不好,重要的是有可能丢失数据。
- mysql常用的两个引擎 :
- innodb (存储量大)
- myisam(存储量小)
mysql5.5源码编译安装 http://www.aminglinux.com/bbs/thread-1059-1-1.html
mysql5.7二进制包安装(变化较大) http://www.apelearn.com/bbs/thread-10105-1-1.html