百度已收录

记一次网站搬家跳的坑,博主原有一个网站本苟活于国外小鸡上,后来备案通过便想着接它回国吧

正常搬家:

1、将数据库备份,网站整站文件打包
2、新服务器创建数据库,并导入数据库
3、整站文件上传
4、修改config.inc.php填入新数据库信息
5、若域名不同则登录后台修改域名

搬家后出现Database Server Error出问题了,这TM简直是空难

首先我们来分析下环境

对比项 原服务器 新服务器
环境 LNMP LNMP
PHP版本 5.5.38 7.2.6

不难看出,PHP版本从之前的5.5.38升到了7.2.6
而typecho在7.0环境下Mysql已经废弃,选用Pdo,所以连接不上数据库

解决方式:

修改config.inc.php

$db = new Typecho_Db('Mysql', 'typecho_');//其中Mysql为默认的适配器,typecho_为表前缀

适配器为Pdo_Mysql修改后

$db = new Typecho_Db('Pdo_Mysql', 'typecho_');

落地成功,撒花庆祝