4.21 LNMP环境介绍
4.22/4.23 Mariadb安装
4.24 服务管理
4.25 Mariadb安装3php
1、LNMP环境介绍css
LNMP环境
Linux + Nginx + MySQL/Mariadb + PHP
Nginx: 是一个WEB服务器,提供HTTP服务的。
MySQL/MariaDB: 是一个关系型数据,用来存数据的(用户名、密码、文章内容),图片存在服务器的目录下
PHP:是一个编程语言,经常使用来作网站(qq.com baidu.com google.com ask.apelearn.com)
Nginx是一个WEB服务器,因此用户首先访问到的就是Nginx(静态的请求,会处理图片、js、css,
接收php的请求,可是不处理)把php的请求转给后面的php-fpm
php-fpm 会处理php相关的请求(叫作动态的请求)
动态、静态
所谓静态,指的是Nginx能够直接处理的图片、js、css、视频、音频、flash等等
所谓动态,指的是这些请求须要和数据库打交道。好比,用户登陆过程,好比查看一篇文章,或者写一篇文章mysql
2、Mariadb安装linux
MariaDB是MySQL的一个分支。 MySQL -(收购)-> SUN -(收购)-> Oracle facebook 使用Oracle
维基百科: https://zh.wikipedia.org/wiki/MariaDB#cite_note-103_release-21
官网 https://mariadb.org/sql
使用免编译的二进制包安装:shell
cd /usr/local/src/ wget http://mirror.rise.ph/mariadb//mariadb-10.3.18/bintar-linux-x86_64/mariadb-10.3.18-linux-x86_64.tar.gz tar zxvf mariadb-10.3.18-linux-x86_64.tar.gz mv mariadb-10.3.18-linux-x86_64 /usr/local/mysql 把解压后的目录更名为Mysql并进入该目录 mkdir -p /data/mysql 存mariadb数据的目录 useradd -M -s /sbin/nologin mysql 建立Mysql用户,-M不建立家目录,-s指定shell为/sbin/nologin 只作服务使用不登陆 chown -R mysql:mysql /data/mysql 指定属主属组 cd /usr/local/mysql ./scripts/mysql_install_db --datadir=/data/mysql --user=mysql 初始化,生成Mysql库,不然没法启动 cp support-files/mysql.server /etc/init.d/mysqld 添加启动脚本 vi /etc/init.d/mysqld 编辑启动脚本 定义:basedir=/usr/local/mysql mysql所在路径 datadir=/data/mysql 数据库所在路径
vi /etc/my.cnf数据库
定义:datadir=/data/mysql socket=/tmp/mysql.sock log-error=/data/mysql/mariadb.log pid-file=/data/mysql/mariadb.pid
查看服务: ps aux |grep mysql
查看监听端口:netstat -lnp //看是否有3306编程
解压:服务器
解压 .tar.gz: tar zxvf xxxx.tar.gz x,解压 z 相对于针对gz压缩 压缩: gzip 1.txt ; 解压:gzip -d 1.txt.gz -d解压缩 解压 .tar.bz2: tar jxvf xxxx.tar.bz2 j 相对于针对bz2压缩 压缩:bzip2 1.txt ; 解压:bzip2 -d 1.txt.bz2 解压 .tar.xz tar Jxvf xxxx.tar.xz J 相对于针对xz压缩 压缩:xz 1.txt ; 解压:xz -d 1.txt.xz 压缩并打包: tar zcvf 123.tar.gz 123/ tar jcvf 123.tar.bz2 123/
启动mariadb报错,缘由是没有定义日志路径
socket
错误: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory 解决: yum install -y libaio libaio-devel
服务管理:
CentOS6: chkconfig --list //列出系统全部的服务 CentOS7: systemctl list-unit-files 6: chkconfig --add mysqld //增长服务到列表,前提是mysqld文件须要在/etc/init.d/下,而且权限755 6:chkconfig mysqld on/off //让其开机启动/关闭 6:/etc/init.d/mysqld start == service mysqld start
MySQL/MariDB链接:
/usr/local/mysql/bin/mysql -uroot 指定用户名,直接进入数据库
作软链接,直接敲mysql命令:ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
rm -f /usr/bin/mysql 便可删除
系统环境变量PATH: echo $PATH
PATH的做用:能够直接用PATH这些路径里面的文件,不用敲绝对路径了。
PATH=$PATH:/usr/local/mysql/bin 临时生效
echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile 永久生效写入此文件,export声明变量
退出终端从新进,或者 source /etc/profile 当即生效
设定密码:mysqladmin -uroot password "tobe"
再次登陆: mysql -uroot -ptobe
也能够经过如下方式链接
mysql -uroot -ptobe -S/tmp/mysql.sock
mysql -uroot -ptobe -h192.168.246.128 -P3306 -h指定主机,-p指定端口