一、LAMP架构介绍:
Linux+ Apache(httpd)+ mysql + php
操作系统+外网服务软件 + 存储软件 + 脚本语言(由C开发)
PHP网站
三个角色可以装在一台机器,也可以分开,但是httpd要和php在一起(php是以模块的形式和apache结合在一起的,apache通过php和mysql打交道,)
动态请求:用户通过账号和密码登录apache,apache通过php去mysql里比对数据,对上后apache会返回给用户登录状态
静态请求:用户通过apache登录,apache直接去linux某个目录中去拿静态的文件或图片。不与mysql打交道
二、mysql/mariaDB介绍
mysql是一个关系型数据库。由mysql ab公司开发。在2008年被sun公司收购。sun公司(java)于2009年被oracle(数据库)公司收购。mysql走上了商业路线。官网:www.mysql.com 在版本5.6开始变化比较大。5.7性能上有很大提升。
mariadb为mysql一个分支。官网为www.mariadb.com,由原作者带领大部分原班人马创立。mariadb5.5对应mysql5.5,mysql5.6对应maiadb10.0。
Community 开源版本
enterprise 企业版
GA 通用版本,再生产环境中使用
DMR 开发里程碑版本(有重大突破的版本)
RC 发行候选版本
Beta 开发测试版本(可能存在bug)
Alpha 内部测试版本
三、Mysql安装
uname -a 查看当前版本信息
[[email protected] ~]# uname -a
Linux lnmp 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
r.aminglinux
安装:rpm(没有办法自定义安装路径),源码,二进制免编译(可以自定义安装路径)
解压mysql的二进制免编译包
tar zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz
将他移动并改名为
mv mysql-5.6.36-linux-glibc2.5-x86_64 /usr/local/mysql
切换到/usr/local/mysql目录下
创建mysql用户
useradd mysql
mysql 数据库的默认储存数据文件的路径在/var/lib/mysql,但是实际中,我们在安装时常常就需要定制安装数据库路径,创建data
mkdir /data
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql 生成数据库系统,指定用户为mysql,储存数据库路径放在/data/下
拷贝配置文件到/etc/my.cnf (可能已经存在my.cnf文件,可能是因为之前装过,也可能是别的数据库的配置)
cp support-files/my-default.cnf /etc/my.cnf
拷贝mysql启动脚本并且编辑
cp support-files/mysql.server /etc/init.d/mysqld
vim /etc/init.d/mysqld
basedir=/usr/local/mysql 指定了mysql程序目录
datadir=/data/mysql 指定了mysql存储数据目录
设置权限为755 (有时候默认是755)
chmod 755 /etc/init.d/mysqld
如果想开机启动,把它添加到系统服务列表里
chkconfig --add mysqld 添加到系统服务列表
chkconfig --list 查看系统服务列表
service mysqld start / /etc/init.d/mysqld start 都是启动mysql服务
pa aux|grep mysql 查看进程
netstat -lntp 查看监听的端口
另外一种方法启动MySQL,&符号表示丢到后台
killall mysqld 杀死mysql进程(不要经常用kill这个命令)
mysql常见的2中引擎
innodb 比较大 和 myisam 比较小
killall 和 kill 的区别 killall很理性,会在读写完成后在结束进程