4.21lnmp环境介绍
一、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等等
所谓动态,指的是这些请求需要和数据库打交道。比如,用户登录过程,比如查看一篇文章,或者写一篇文章
4.22mariadb安装
一、MariaDB简介
MariaDB是MySQL的一个分支。 MySQL --> SUN --> Oracle facebook
维基百科: https://zh.wikipedia.org/wiki/MariaDB#cite_note-103_release-21
官网 https://mariadb.org/
二、MariaDB安装步骤:
- 下载
为方便管理,下载的安装包都放到/usr/local/src/目录下
进入该目录下,下载数据库安装包[root@zyp02 ~]# cd /usr/local/src [root@zyp02 src]# wget http://mirrors.neusoft.edu.cn/mariadb//mariadb-10.3.11/bintar-linux-x86_64/mariadb-10.3.11-linux-x86_64.tar.gz
- 解压
[root@zyp02 src]# tar xzf mariadb-10.3.11-linux-x86_64.tar.gz
- 将解压的安装文件移动到指定安装目录下
特别说明:改命令是将目录mariadb-10.3.11-linux-x86_64移动到local下并将目录名称改为mysql,而不是将mariadb-10.3.11-linux-x86_64这个目录放在mysql目录之下。执行这条命令的前提是系统之前不存在mysql这个目录。[root@zyp02 src]# mv mariadb-10.3.11-linux-x86_64 /usr/local/mysql
- 新建数据目录和mysql用户,用户不创建用户家目录,不让改该用户登陆Linux
[root@zyp02 src]# cd /usr/local/mysql [root@zyp02 mysql]# mkdir -p /data/mysql [root@zyp02 mysql]# useradd -M -s /sbin/nologin mysql [root@zyp02 mysql]# chown -R mysql:mysql /data/mysql
- 进入安装目录,开始初始化
如果安装不成功,按提示安装 yum install -y libaio libaio-devel即可。[root@zyp02 mysql]# ./scripts/mysql_install_db --datadir=/data/mysql --user=mysql
检查上一条命令是否成功echo $?输出为0,即为执行成功。 - 安装后启动mysql
//用启动脚本启动脚本
//进入安装目录,将mysql下的support-files下的mysql.server复制到init.d下并改名字mysqld。[root@zyp02 mysql]# cd /usr/local/mysql [root@zyp02 mysql]# cp support-files/mysql.server /etc/init.d/mysqld
- 编辑启动脚本
[root@zyp02 mysql]# vi /etc/init.d/mysqld 定义:basedir=/usr/local/mysql datadir=/data/mysql
- 加入启动列表
//启动mysql服务[root@zyp02 mysql]# chkconfig --add mysqld //增加服务到列表,前提是mysqld文件需要在/etc/init.d/下,并且权限755 [root@zyp02 mysql]# chkconfig mysqld on [root@zyp02 mysql]# chkconfig --list
[root@zyp02 mysql]# /etc/init.d/mysqld start == service mysqld start
- 启动出错,需要改配置文件,改四处:数据目录,socket,日志错误和pid。
[root@zyp02 mysql]# vi /etc/my.cnf datadir=/data/mysql; socket=/tmp/mysql.sock; log-error=/data/mysql/mariadb.log pid-file=/data/mysql/mariadb.pid
- 服务启动后,可连接MariaDB
[root@zyp02 mysql]# /usr/local/mysql/bin/mysql -uroot
- 环境变量
[root@zyp02 mysql]# PATH=$PATH:/usr/local/mysql/bin [root@zyp02 mysql]# echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile 退出终端重新进,或者 source /etc/profile 设定密码:mysqladmin -uroot password "aminglinux" 再次登录:mysql -uroot -paminglinux
三、涉及到的知识点
-
查看服务是否启动
查看服务: ps aux |grep mysql
查看监听端口:netstat -lnp //看是否有3306 -
tar命令:
tar
-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件
这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出下面的参数-f是必须的
-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。命令总结 压缩 tar -cvf jpg.tar *.jpg //将目录里所有jpg文件打包成jpg.tar tar -czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz tar -cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2 tar -cZf jpg.tar.Z *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z rar a jpg.rar *.jpg //rar格式的压缩,需要先下载rar for linux zip jpg.zip *.jpg //zip格式的压缩,需要先下载zip for linux 解压 tar -xvf file.tar //解压 tar包 tar -xzvf file.tar.gz //解压tar.gz tar -xjvf file.tar.bz2 //解压 tar.bz2 tar -xZvf file.tar.Z //解压tar.Z unrar e file.rar //解压rar unzip file.zip //解压zip 总结 1、*.tar 用 tar -xvf 解压 2、*.gz 用 gzip -d或者gunzip 解压 3、*.tar.gz和*.tgz 用 tar -xzf 解压 4、*.bz2 用 bzip2 -d或者用bunzip2 解压 5、*.tar.bz2用tar -xjf 解压 6、*.Z 用 uncompress 解压 7、*.tar.Z 用tar -xZf 解压 8、*.rar 用 unrar e解压 9、*.zip 用 unzip 解压
解压 .tar.gz: tar zxvf xxxx.tar.gz z 相对于针对gz压缩 gzip 1.txt ; gzip -d 1.txt.gz
解压 .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/ -
服务列表
CentOS6: chkconfig --list //列出系统所有的服务
CentOS7: systemctl list-unit-files
6: chkconfig --add mysqld //增加服务到列表,前提是mysqld文件需要在/etc/init.d/下,并且权限755
6:chkconfig mysqld on //让其开机启动
6:/etc/init.d/mysqld start == service mysqld start