在VPS上部署MySQL数据库:性能优化指南
第一次部署项目的时候,我在服务器上折腾了8个小时。现在回想起来,如果当时有人告诉我这些坑,20分钟就能搞定。
今天我把完整的部署流程整理出来,保证你看完就能上手,不走弯路。
为什么部署总是这么难?
说实话,部署这事儿最坑的不是技术难度,而是:
- 教程都过时了:去年的教程,今年的系统版本已经变了
- 漏了关键步骤:防火墙、权限、环境变量,少一个都不行
- 本地能跑,服务器就挂:端口占用、路径不对、依赖缺失
我踩过的坑:
- 忘了开防火墙端口,调试了2小时才发现
- 用 root 用户跑应用,被黑客攻击了
- 没配置进程守护,服务器重启后应用就挂了
我的部署清单(照着做不会错)
这是我总结的部署 checklist,每次部署都过一遍:
准备工作
你需要:
- 一个 DigitalOcean 账号(点击注册获取 $200 免费额度)
- 一个 Node.js 项目
- 基本的命令行知识
步骤1:创建云服务器
- 登录 DigitalOcean 控制台
- 点击 "Create" → "Droplets"
-
选择配置:
- 镜像:Ubuntu 22.04 LTS
- 套餐:Basic $4/月(足够小项目使用)
- 数据中心:选择离你最近的
- SSH Key:添加你的公钥(推荐)
点击 "Create Droplet",等待1分钟
步骤2:连接服务器
ssh root@your_server_ip
步骤3:安装 Node.js
# 更新系统
apt update && apt upgrade -y
# 安装 Node.js 20.x
curl -fsSL https://deb.nodesource.com/setup_20.x | bash -
apt install -y nodejs
# 验证安装
node --version
npm --version
步骤4:部署应用
# 克隆你的项目
git clone https://github.com/your-username/your-project.git
cd your-project
# 安装依赖
npm install
# 启动应用
npm start
步骤5:使用 PM2 保持运行
# 安装 PM2
npm install -g pm2
# 启动应用
pm2 start app.js --name "my-app"
# 设置开机自启
pm2 startup
pm2 save
步骤6:配置防火墙
# 允许 HTTP 和 HTTPS
ufw allow 80
ufw allow 443
ufw allow 22
ufw enable
完成!
现在访问 http://your_server_ip,你的应用已经在线了!
下一步
- 配置域名
- 安装 Nginx 反向代理
- 配置 SSL 证书(Let's Encrypt)
- 设置 CI/CD 自动部署
成本分析
使用 DigitalOcean 的 $4/月套餐:
- 1GB 内存
- 25GB SSD
- 1TB 流量
- 足够运行多个小型应用
有问题欢迎评论!












