帮助中心/故障排查/迁移

迁移到新的服务器教程

说明: 迁移前请提前告知你的商家和接单员。需关闭平台。如果没关闭平台,迁移过程中,如果有新的订单,企业商户的资金和接单员的资金会有变动,那么迁移到新的服务器的话,是变动前的数据 ,不会同步最新的数据,所以迁移过程,务必关闭平台。1.关闭平台,不让用户下单。2.通知接单员 ①要么从现在开始,告知...

更新于 2025年11月19日

码科跑腿平台运营者

说明: 迁移前请提前告知你的商家和接单员。需关闭平台。如果没关闭平台,迁移过程中,如果有新的订单,企业商户的资金和接单员的资金会有变动,那么迁移到新的服务器的话,是变动前的数据 ,不会同步最新的数据,所以迁移过程,务必关闭平台。

1.关闭平台,不让用户下单。

2.通知接单员

①要么从现在开始,告知接单员什么都不要点,等迁移完成后,得到通知了,再让接单员继续完成手上的订单。(建议采用这种)

②要么接单员手上有进行中的订单的,在迁移之前,让他们全部先点完成,再给人家送过去,将订单完成。所有接单员在手机上将所有订单点了完成之后,请告知技术。

3.备份站点文件和数据库(可以先删掉一些比较大的日志文件再备份)

登录旧服务器的宝塔

①备份后端站点的文件

在宝塔找到后端站点

image.png

②备份后台站点的文件

在宝塔找到后台站点,操作和备份后端站点的一样

③备份后端的数据库

在数据库里找到后端站点的数据库,然后备份,备份好之后,下载

image.png

4.新宝塔里安装环境

登录新服务器的宝塔,安装好独立版所需要的环境

参考这个教程:https://www.yuque.com/99make/ofmr72/rzd57p

​

5.新宝塔里添加两个站点

①在新宝塔里分别添加好后端站点和后台站点

​

②添加后端站点的时候,记录保存好后端站点的数据库名称、用户名、密码,后面要用到,到后端站点的.env文件里修改数据库的参数

​

③然后分别给这两个站点配置好伪静态

6.新宝塔导入站点文件和数据库

①给后端站点导入文件

将下载好的后端站点的文件上传到新宝塔里后端站点的根目录下,然后解压

②给后台站点导入文件

将下载好的后台站点的文件上传到新宝塔里后台站点的根目录下,然后解压

③给后端数据库导入数据

在新宝塔里,找到后端站点的数据库,然后导入刚才下载好的数据库

注意:如果第3步中第③小步下载好的数据库的后缀是sql.gz,那么先将这个文件解压,得到一个后缀为sql的文件,导入数据库的时候,就导入这个。

image.png

1637633866.png

​

7.后端站点的网站目录设置

image.png

到后端站点根目录找到.env文件,将数据库的名称、用户名和密码修改成新的数据库的。(刚才第5步中第②步记录的)

image.png

8.后端和后台站点的伪静态配置

①后端站点:

image.png

②后台站点:

image.png


9.后台站点static-config.json改域名(如果后端域名换了,才需要操作这步)

如果连后端域名也换了,那么这个文件里的域名也要换成新的后端域名。

如果后端域名没有换,那么这一步可以忽略。

图片.png如果换了后端域名,但是没有来这里换上新的后端域名,那么迁移是失败的。数据会继续写入原来的服务器的数据库中,而不会写入到新服务器的数据库中,因为一直访问的是旧的后端域名。


10.将这两个域名解析到新服务器的IP

登录这个域名的管理后台,直接在原来的解析记录上修改,将旧的IP换成新的IP

​

11.添加守护进程

软件商店-找到进程守护管理器图片.png图片.png名称填写make-swoole

启动用户选择 www:

运行目录选择后端站点根目录:

每个人的后端站点根目录都不一样,请根据自己的实际情况进行选择。

启动命令填写:

进程数量必须是1:

填写完毕后,点击确定。

如图所示,说明守护进程成功启动:如果进程列表不显示刚才添加的进程,请重启 SuperVisord 服务。

​

特别说明:如果进程无法启动成功,请检查env文件redis配置那里是否填了密码,但是软件商店redis那里没有密码或者和env文件里的密码不一致。总之两边要么不填,要么填了要一致。

​

12.SSL证书

给两个站点部署SSL证书,可以从原宝塔那里分别将这两个域名的SSL证书复制填过来。

13.两个小程序添加新的IP白名单(如果原来开启有的,就需要操作这步)

如果这里的IP白名单原来有添加,就需要把新服务器的IP加进来;

如果这里原来是关闭状态(什么IP也没有),就不需要把新服务器的IP加进来。

​

分别登录用户端和接单端小程序后台--开发--开发管理--开发设置--小程序代码上传--IP白名单,将新服务器的IP给添加上。

​

image.png图片.png


14.原服务器装的是PM2管理器,新服务器装的是Node.js版本管理器

如果原服务器和新服务器都是PM2管理器,则不用看这一步

图片.png如上图所示,这种情况下,需要到在宝塔-码科系统后端站点-根目录下的.env文件,修改一下配置,如下图所示:

图片.png图片.png请填写以下内容:

  • PHP_PATH填 /www/server/php/74/bin/php
  • Node_PATH 填 /www/server/nodejs/v16.19.1/bin/node
  • npm_PATH 填 /www/server/nodejs/v16.19.1/lib/node_modules/npm/bin/npm-cli.js

图片.png


15.特别说明

①守护进程

如果守护进程添加失败,可以尝试卸载“进程守护管理器”(前提是原来没有其他进程)然后重装,然后重新添加进程

​

②后台进不了

如果码科系统进不了,请检查env文件 redis是否填了密码,以及redis是否设置了密码、域名解析到新的服务器IP还未生效(可以ping一下)


③后端站点网站目录

后端站点的 网站目录选择“/public”后,要记得点保存图片.png

④检查数据库是否有数据

导入数据库后,进数据库看一下各个表是否都有数据了。


导入数据库失败案例:

原因:磁盘空间满了,无法全部导入所有的数据

解决方法:清理磁盘空间或者扩容。

​

​

1739418549664.png

⑤数据库里的某些表没有数据

原因2:备份数据库的时候就出了问题,宝塔没有备份完所有的数据。

这种情况一般是数据库太大了,宝塔系统本身的问题没能完整备份完。

​

解决方案:如果数据库很大,那么先将数据库里一些没用的日志删掉,再备份数据库。(运营时间长,单量大的,数据库一般都会很大)

​

⑥迁移后用户端下单提示:SQLSTATE[HY000]:General error1364 Field

原因:文件缺少某个字段

图片.png


⑦涉及到要授权IP的地方

1.如果有买地图key的需要授权新的IP

2.小程序后台-开发管理 开启了IP白名单的,要关掉或者加上新的IP

3.微信支付商户号-商家转账到零钱功能 要加上新的IP

查看语雀原文

继续阅读

相关教程

查看全部帮助教程