首页 > 解决方案 > 为什么数据库可以在一台服务器上工作,而只能部分在另一台服务器上工作?

问题描述

对不起,如果这是一个新手问题。我一直在寻找,似乎无法弄清楚这一点。

我正在尝试将 PHP webapp 从 Plesk 移动到 RunCloud。两者都托管在 Digital Ocean 服务器上。

我从 Plesk 导出数据库,然后将其导入 RunCloud。更新配置后,它只能部分工作。一些任务读取数据,一些似乎在写入,但大多数只是破坏它。

奇怪的是,如果我将配置文件指向 Plesk 服务器,应用程序将其用作远程数据库时效果很好。

这是来自 PHPMyAdmin。唯一看起来可疑的是 UNIX,而不是 TCP。但我找不到将 RunCloud 更改为 UNIX 的方法。

我会复制错误,但它们是全面的。有任何想法吗?太感谢了!

PHPMyAdmin Plesk 服务器:

Server: Localhost via UNIX socket
Server type: MariaDB
Server connection: SSL is not being used Documentation
Server version: 10.1.48-MariaDB-0ubuntu0.18.04.1 - Ubuntu 18.04
Protocol version: 10
User: prod@localhost
Server charset: UTF-8 Unicode (utf8mb4)

从 RunCloud 服务器:

Server: 127.0.0.1 via TCP/IP
Server type: MariaDB
Server connection: SSL is not being used Documentation
Server version: 10.4.21-MariaDB-1:10.4.21+maria~focal-log - mariadb.org binary distribution
Protocol version: 10
User: prod@localhost
Server charset: UTF-8 Unicode (utf8)

标签: mariadbdatabase-migrationplesk

解决方案


作为一个新手,我了解到 10.1 和 10.4 是相当不同的。然后,我检查了每个错误,看看是否可以在 MariaDB 更新指南中找到更改(这很棒)。不知何故,我遇到了这篇文章:错误代码 1292 不正确的日期值 mysql。这是零日期。我刚刚在 my.cnf 中添加了它建议的行。固定的!!!


推荐阅读