部署阿里云服务—— Linux + NodeJS + Mysql + Nginx
linux:Centos v8.5
nodeJS:v20.12.0
mysql:v8.0.28
Nginx:v1.24.0
1 安装 Node
1.2 下载 nvm
wget https://github.com/nvm-sh/nvm/archive/refs/tags/v0.39.7.tar.gz
1.3 解压 nvm
mkdir -p /root/.nvm
tar -zxvfv0.39.7.tar.gz -C /root/.nvm
1.4 配置环境
~/.bashrc
文件
vim ~/.bashrc
运行 【1】命令后,按 i 进入 编辑模式,在拷贝 【2】的内容。
- 编辑
~/.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 -> 重启
1.5 读取并使用配置
source ~/.bashrc
1.6 查看可安装的nodejs版本
nvm ls-remote
在结果中下载带 LTS 字样的版本号。
1.7 下载指定版本
nvm install v20.12.0
1.8 下载完成后,使用指定版本
nvm use v20.12.0
1.9 其他相关命令
nvm ls // 查看已安装的nodejs版本
nvm uninstall 8.16.0 // 卸载指定版本
2 安装 Mysql v8.0.28
2.1 下载 mysql rpm 包
wget https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm
2.2 安装 mysql rpm 包
rpm -ivh mysql80-community-release-el7-5.noarch.rpm
2.3 真正的安装 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
2.4 启动 Mysql
service mysqld restart
2.5 获取初次登录密码
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 为密码,拷贝用于下一步。
2.6 登录 Mysql
mysql -uroot -p
2.7 第一次登录后修改密码
alter user user() identified by 'Root_12root'; //Root_12root 是新密码
不修改密码会报错You must reset your password using ALTER USER statement before executing this statement.
译:在执行此语句之前,您必须使用Alter User语句重置密码
2.8 修改远程登录权限
- 登录 —— 这时你应该没有退出登录,可直接进行下一步。
mysql -uroot -p;
- 选择 mysql 表
use mysql;
- 修改user表使其root用户可以通过远程连接
update user set host = '%' where user = 'root';
- 查看是否开启
select * from mysql.user where user='root' \G;
返回的结果中包括
Host: %
就说明成功了
*************************** 1. row ***************************
Host: %
User: root
- 刷新权限
flush privileges;
之后就可以使用 Navicat Premium 或其他软件远程连接服务器的 Mysql
- 退出 Mysql
exit
3 安装 Nginx 服务器
安装在 /usr/local
目录,所以先进入 /usr/local
目录
执行 cd /usr/local
3.1 下载依赖
yum -y install pcre*
yum -y install openssl*
3.2 下载 Nginx
更多版本看 nginx 官网
wget https://nginx.org/download/nginx-1.24.0.tar.gz
下完之后可以使用 ls
命令查看是否下载完成。
3.3 解压
tar zxvf nginx-1.24.0.tar.gz
解压完成之后 /usr/local
目录会有一个文件夹 nginx-1.24.0
—— 这是解压后的目录
通过 命令 ls
查看
3.4 编译 —— 进入到解压后的目录 nginx-1.24.0
两种编译方式 —— 选其一
- 普通编译
http_ssl_module
编译不同在于第二种 携带
–with-http_ssl_module
配置编译,使编译内容有http_ssl_module
如果网站需要使用 Https 协议,则使用第二种
3.4.1 普通编译
./configure
3.4.2 http_ssl_module
编译
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
3.5 安装
在解压后的目录种执行,也就是
/usr/local/nginx-1.24.0
make install
安装完毕后,会在 /usr/local
目录中 生成一个 nginx
的目录,这个才是我们的服务器目录。
你可以使用 命令cd ..
返回上级目录,然后 ls
查看是否有 nginx
目录
3.6 启动服务器
-
进入安装目录(nginx),在进入
sbin
目录,sbin目录只有一个nginx目录 -
执行
./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 目录中
3.7 nginx 其他命令
在 nginx/sbin 目录下执行
- ./nginx:启动
- ./nginx -v:查看版本
- ./nginx -s stop:停止
- ./nginx -s reload:重启
8.0.28) + nginx](https://blog.csdn.net/weixin_56361614/article/details/124143402)】
-
nginx 服务器的页面文件在 nginx 安装目录的 html 目录中,如按以上步骤操作的话,在
/usr/local/nginx/html
目录中 -
nginx 服务器的配置文件在 nginx 安装目录的 conf 目录中
3.8 nginx 其他命令
在 nginx/sbin 目录下执行
- ./nginx:启动
- ./nginx -v:查看版本
- ./nginx -s stop:停止
- ./nginx -s reload:重启