部署阿里云服务器(ECS)—— Linux + NodeJS + Mysql + Nginx

184 阅读4分钟

部署阿里云服务器(ECS)—— Linux + NodeJS + Mysql + Nginx

linux:Centos8.5

nodeJS:v20.12.0

mysql:v8.0.28

Nginx:v1.24.0

安装 Node

下载 nvm

wget https://github.com/nvm-sh/nvm/archive/refs/tags/v0.39.7.tar.gz

解压 nvm

mkdir -p /root/.nvm
tar -zxvfv0.39.7.tar.gz -C /root/.nvm

配置环境

  1. ~/.bashrc文件
vim ~/.bashrc

运行 【1】命令后,按 i 进入 编辑模式,在拷贝 【2】的内容。

  1. 编辑 ~/.bashrc文件,在文件末尾添加如下内容
export NVM_DIR="$HOME/.nvm/nvm-0.39.7"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

编辑好后,按 键盘esc按钮,退出编辑。

再按依次按:qw,再按回车,保存并退出编辑。

更多命令:

vi xxx.xxx	-> 打开文件 
i -> 进入编辑状态
按 esc 	-> 提出编辑状态
:w	-> 保存
:q	-> 退出
:q! -> 强制退出不保存
:wq -> 保存后退出
:wq! -> 强制保存后退出
reboot -> 重启

读取并使用配置

source ~/.bashrc

查看可安装的nodejs版本

nvm ls-remote

在结果中下载带 LTS 字样的版本号。

下载指定版本

nvm install v20.12.0

下载完成后,使用指定版本

nvm use v20.12.0

其他相关命令

nvm ls // 查看已安装的nodejs版本
nvm uninstall 8.16.0 // 卸载指定版本

安装 Mysql v8.0.28

下载 mysql rpm 包

wget https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm

安装 mysql rpm 包

rpm -ivh mysql80-community-release-el7-5.noarch.rpm

真正的安装 Mysql

  • 这里时间会久点
  • 出现选择就选 y
  • ==并笔者在安装过程中遇到了两个问题==,后面附解决办法
yum -y install mysql-community-server

==出现错误==Unable to find a match: mysql-community-server,解决方法【原文地址 - CSDN】如下:


# 先执行
yum module disable mysql
 
# 后执行
yum -y install mysql-community-server

==出现错误==Error: GPG check FAILED,解决方法【原文地址 - CSDN】如下:

yum -y install mysql-community-server --nogpgcheck

启动 Mysql

service mysqld restart

获取初次登录密码

grep "password" /var/log/mysqld.log

得到结果:2024-03-28T08:59:49.801276Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: lLaHUAhyx2%Y <== 其中 ==lLaHUAhyx2%Y== 为密码,拷贝用于下一步。

登录 Mysql

mysql -uroot -p

第一次登录后修改面膜

alter user user() identified by 'Root_12root';   //Root_12root 是新密码

==不修改密码会报错==You must reset your password using ALTER USER statement before executing this statement.

译:在执行此语句之前,您必须使用Alter User语句重置密码

修改远程登录权限

  1. 登录 —— 这时你应该没有退出登录,可直接进行下一步。
mysql -uroot -p;
  1. 选择 mysql 表
use mysql;
  1. 修改user表使其root用户可以通过远程连接
update user set host = '%' where user = 'root';
  1. 查看是否开启
select * from mysql.user where user='root' \G;

返回的结果中包括 Host: % 就说明成功了

*************************** 1. row ***************************
 														Host: %
                   	 				User: root
  1. 刷新权限
flush privileges;

之后就可以使用 Navicat Premium 或其他软件远程连接服务器的 Mysql

  1. 退出 Mysql
exit

安装 Nginx 服务器

安装在 /usr/local 目录,所以先进入 /usr/local 目录

执行 cd /usr/local

下载依赖

yum -y install pcre*

yum -y install openssl*

下载 Nginx

更多版本看 nginx 官网

wget https://nginx.org/download/nginx-1.24.0.tar.gz

下完之后可以使用 ls 命令查看是否下载完成。

解压

tar zxvf nginx-1.24.0.tar.gz

解压完成之后 /usr/local 目录会有一个文件夹 nginx-1.24.0 —— 这是解压后的目录

通过 命令 ls 查看

编译 —— 进入到解压后的目录 nginx-1.24.0

两种编译方式 —— 选其一

  • 普通编译
  • http_ssl_module 编译

不同在于第二种 携带–with-http_ssl_module 配置编译,使编译内容有http_ssl_module

如果网站需要使用 Https 协议,则使用第二种

普通编译

./configure

http_ssl_module编译

 ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

安装

在解压后的目录种执行,也就是 /usr/local/nginx-1.24.0

make install

安装完毕后,会在 /usr/local 目录中 生成一个 nginx 的目录,这个才是我们的服务器目录。

你可以使用 命令cd .. 返回上级目录,然后 ls 查看是否有 nginx 目录

启动服务器

  1. 进入安装目录(nginx),在进入sbin目录,sbin目录只有一个nginx目录

  2. 执行 ./nginx 即可启动

这样就启动了,正常状态下,就可以在浏览器通过 服务器IP 地址,访问到 Nginx 的 初始页面了,会有内容—— Welcome to nginx! 。

==如果在启动 ngxin 时,没有报错,但是在浏览器还是打不开,可以看看阿里云ECS控制台,看下你的 ESC服务器的安全组是否开启了80端口,或者查看你服务器的防火墙== —— 略详细点转 【nodejs + mysql(v8.0.28) + nginx

  • nginx 服务器的页面文件在 nginx 安装目录的 html 目录中,如按以上步骤操作的话,在 /usr/local/nginx/html 目录中

  • nginx 服务器的配置文件在 nginx 安装目录的 conf 目录中


nginx 其他命令

在 nginx/sbin 目录下执行

- ./nginx:启动

- ./nginx -v:查看版本

- ./nginx -s stop:停止

- ./nginx -s reload:重启