从脚手架开始学前端 【第3-1期】CentOS 7 工具安装(持续更新)

563 阅读2分钟

前言

续CentOS 7 搭建Node.js之后,我们专门推出工具安装与配置篇幅,并持续更新

安装列表

  • nvm(node)
  • mysql 配置
  • Nginx(Tengine)
  • pm2 启动
  • mongodb

安装说明

NVM

参考地址:从脚手架开始学前端 【第3期】CentOS 7 安装Node.js环境及配置

MySQL

1.配置YUM源

在MySQL官网中下载YUM源rpm安装包:dev.mysql.com/downloads/r…

# 下载mysql源安装包
$ wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
# 安装mysql源
$ yum localinstall mysql57-community-release-el7-8.noarch.rpm

检查mysql源是否安装成功

mysql-connectors-community/x86_64 MySQL Connectors Community                 141
mysql-tools-community/x86_64      MySQL Tools Community                      105
mysql57-community/x86_64          MySQL 5.7 Community Server                 404

2.安装MySQL

$ yum install mysql-community-server

3.启动MySQL服务

$ systemctl start mysqld

查看MySQL的启动状态(如果没有出现下面字样,重新启动即可)

[root@iZwz99ftqv2b7ynaocfmlnZ mysql]# systemctl status mysqld
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2020-04-02 10:13:32 CST; 21s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 6394 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
  Process: 6343 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 6397 (mysqld)
   CGroup: /system.slice/mysqld.service
           └─6397 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid

Apr 02 10:13:26 iZwz99ftqv2b7ynaocfmlnZ systemd[1]: Starting MySQL Server...

4.设置为开机启动

$ systemctl enable mysqld
$ systemctl daemon-reload

5.修改root默认密码

mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面的方式找到root默认密码,然后登录mysql进行修改:

$ grep 'temporary password' /var/log/mysqld.log
$ mysql -uroot -p
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'root123!';mysql> set password for 'root'@'localhost'=password('root23!'); 

注意:mysql5.7默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements错误

Nginx(Tengine)

概述

在安装nginx之前,我们最好再来了解一下nginx都有哪些版本。在官方的版本中,有两个大方向,一个是开源免费版的nginx,另一个是商业版的nginx plus,这两个版本分别有不同的官方网站,如下:

  • 开源版官网:nginx.org

  • 商业版官网:nginx.com

安装方式

  • yum安装
  • 源码包安装

yum 安装

$ sudo yum -y install nginx   # 安装 nginx
$ sudo yum remove nginx  # 卸载 nginx
  1. 下载tengine包,将tengine-2.2.0.tar.gz下载到 /usr/local/nginx目录中。
  2. 启动nginx
$ cd /usr/local/nginx/ &&   ./nginx

PM2 启动

MongoDB

1.安装wget

$ yum -y install wget

2.下载并解压

Centos7下直接使用wget下载:

$ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.6.13.tgz

创建目录/usr/local/mongodb,将解压之后文件放入该文件夹:

$ tar -zxvf mongodb-linux-x86_64-3.6.13.tgz 
# 解压
$ mv  mongodb-linux-x86_64-3.6.13/ /usr/local/mongodb
# 进入mongodb目录(仅限非配置方案使用)
$ cd /usr/local/mongodb/mongodb-linux-x86_64-3.6.13/
#进入bin启动目录
$ cd bin
#启动Mongodb
$ ./mongod或./mongo

3.配置相关内容

  1. 配置环境变量
vim /etc/profile
#加入环境变量
MONGODB_HOME=/usr/local/mongodb/mongodb-linux-x86_64-3.6.13
PATH=$PATH:$MONGODB_HOME/bin
  1. 创建数据库目录以及日志目录
# 创建数据目录和日志目录
mkdir -p /usr/local/mongodb/data
mkdir -p /usr/local/mongodb/logs
# 设置数据目录和日志目录权限
chmod -R 777 /usr/local/mongodb/data
chmod -R 777 /usr/local/mongodb/logs
  1. 创建配置文件(配置文件方式启动mongo)
mkdir /usr/local/mongodb/mongo.conf
vim mongo.conf
#加入以下内容
dbpath=/usr/local/mongodb/data
#事先创建该文件
logpath=/usr/local/mongodb/logs/mongo.log 
logappend=true
journal=true
quiet=true
port=27017
#后台运行
fork=true 
#允许任何IP进行连接
bind_ip=0.0.0.0 
  1. 启动服务
#进入根目录
$ cd /usr/local/mongodb
#使用配置文件启动服务
$ bin/mongod -f /usr/local/mongodb/mongo.conf$ cd bin
$ ./mongod -f ./mongodb.conf
# 不创建配置文件通过mongod参数启动也可以
$ cd bin
$ ./mongod -dbpath /data/db/ -logpath /data/db/mongo.log -logappend -fork -port 27017

参数配置说明

参数说明
--quiet安静输
--port arg指定服务端口号,默认端口27017
--bind_ip arg绑定服务IP,若绑定127.0.0.1,则只能本机访问,不指定默认本地所有IP

5.进入shell

$ bin/mongo

4.mongodb加密

mongodb安装后自身是没有密码的,用户连接只需填写id地址,端口号,数据库名称即可登陆,这是存在安全风险的,所以我们要为数据库设置安全密码,让只有数据库认证的用户才能执行读写操作

1.用--auth开启安全性检查,只有数据库认证的用户才能执行读写操作

点击下方关注我👇👇👇