我对 Drupal9 站点的数据库进行了备份,并尝试在另一台服务器上使用它。
我得到了错误:
#2006 - MySQL 服务器已消失
我认为这是因为某些文件、查询或数据包大小限制,但无论我压缩了多少数据库以及编辑了多少服务器的参数(例如“max_allowed_packet”等)。
最终我发现不是这些,而是这部分:
ALTER TABLE `aza_node_revision__body`
ADD PRIMARY KEY (`entity_id`,`revision_id`,`deleted`,`delta`,`langcode`),
ADD KEY `bundle` (`bundle`),
ADD KEY `revision_id` (`revision_id`),
ADD KEY `body_format` (`body_format`);
不知道为什么这部分失败了,我试着把它分成两部分:
ALTER TABLE `aza_node_revision__body`
ADD PRIMARY KEY (`entity_id`,`revision_id`,`deleted`,`delta`,`langcode`);
ALTER TABLE `aza_node_revision__body`
ADD KEY `bundle` (`bundle`),
ADD KEY `revision_id` (`revision_id`),
ADD KEY `body_format` (`body_format`);
幸运的是,这行得通,但我不知道为什么在运行这部分查询时服务器会断开连接。