【发布时间】:2021-09-28 09:14:55
【问题描述】:
对不起,如果这是一个新手问题。我一直在寻找,似乎无法弄清楚。
我正在尝试将 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)
【问题讨论】:
-
1) 两个服务器版本不完全相同,你的目标版本较旧。您需要检查您是否使用了新版本中包含但在目标版本中不可用的任何功能。 2) 两台服务器的默认字符集不同,目标使用旧的 utf8 编码。 3) 如果没有看到错误消息,则无法提供帮助。有大量的配置设置可以破坏两个 mariadb 实例之间的代码,比如启用严格的 sql 模式。请不要指望这里的任何人会为您提供此类设置的完整列表。
-
非常感谢!根据您指出它们实际上有多么不同,我重新开始尝试弄清楚。又过了几个小时,我才知道 10.1 和 10.4 有很大的不同。然后,我检查了每个错误,看看是否可以在 MariaDB 更新指南中找到更改(这很棒)。不知何故,我遇到了这个帖子:stackoverflow.com/questions/14625191/…。这是零日期。我刚刚在 my.cnf 中添加了它建议的行。固定的!!!天哪,谢谢!没有你的回复是不可能做到的。
标签: mariadb database-migration plesk