我的一次轻量级应用服务器迁移经历

32 阅读2分钟

我在网上查了轻量级应用服务器快速迁移的方法,只找到了宝塔的快速迁移,可惜我的原服务器装的不是宝塔,所以这次我的新服务器装的是宝塔。

开始迁移前首先确认服务器上有哪些东西,我的东西不多只有两个数据库、一个nodejs后端服务、gogs、3个前端项目、一些静态文件资源。对于我来说难点就在gogs的迁移了。因为使用的是宝塔所以git、nginx、MySQL、node.js环境直接三五两下就解决了。

第一步 数据库迁移

数据库迁移我使用了navicat工具中的数据传输 image.png 这就很简单,我在目标服务器中新建了两个库,然后直接把旧库中的数据传输到新的库中,其中包括了gogs的数据库。

第二步 nginx配置迁移

cv一下,重启

第三步 nodejs后端服务,前端项目,静态资源迁移

cv过来,后端服务需要改下配置

第四步 gogs迁移

1.安装gogs

可以查看官方文档

  1. 环境准备(git、MySQL、ssh服务器(可不用,详情看文档))
  2. adduser git新建用户
  3. su git切换用户(gogs默认用户是git)
  4. 下载安装wget <https://dl.gogs.io/0.13.0/gogs_0.13.0_linux_amd64.tar.gz>
  5. 解压后cd进入gogs文件夹
  6. 在gogs/custom/conf目录下新建app.ini文件(custom/conf 文件夹也需要自己建的)
  7. 执行./gogs web启动
  8. Gogs 默认会在端口 3000 启动 HTTP 服务,访问 /install 以进行初始配置(例如 http://localhost:3000/install )。
  9. 然后进入页面完成配置就ok了,数据库填之前新建已经同步过来的数据库。nohup ./gogs web & 后台运行。lsof -i:3000 查看任务。kill -9 [pid]结束任务。

然后就是迁移了,数据库之前已经同步过来了,然后把原服务器中/home/git/gogs-repositories文件夹cv过来(使用tar传输,否则后面会出现问题。)

然后执行这个操作

image.png

然后就没然后了,大功告成。之前没用tar传输可能出现的问题就是控制面板的消息不更新。

cd /home/git/gogs/gogs-repositories
chmod +x xxx/*/hooks/post-receive
chmod +x xxx/*/hooks/pre-receive
chmod +x xxx/*/hooks/update

“xxx” 是用户名

参考: