原码笔记

原码笔记

如何解决WordPress提示无法将附件插入数据库错误

小诸哥 0
  • WP内部错误

  • 错误名称:

  • 无法将附件插入数据库

  • 英文名称:

  • Could Not Insert Attachment Into the Database

  • 错误描述:

  • 基于服务器权限限制,主题或者插件冲突,PHP内存限制或者文件名不合法等原因,可能导致WordPress上传文件时提示“无法将附件插入数据库”错误。

如何解决WordPress提示无法将附件插入数据库错误

当你在你的网站上工作时,你可能需要上传新的文件。在这个过程中,WordPress可能会产生一个错误,说它 “无法将附件插入数据库”。在这种情况下,任何上传的图片或文章都不会被添加到你的网站。

幸运的是,有许多方法可以解决 “WordPress无法将附件插入数据库”的错误。通过简单地调整图像的大小或更新文件名,你可以满足WordPress对新上传的要求。然而,你可能需要更广泛的解决方案,比如增加你网站的内存限制。

在这篇文章中,我们将解释什么是 “WordPress无法将附件插入数据库”的错误。然后,我们将告诉你八个不同的方法来解决这个问题。

  • 什么是 “WordPress无法将附件插入数据库”的错误?

  • 如何修复 “WordPress无法将附件插入数据库 “的错误

什么是 “WordPress无法将附件插入数据库”的错误?

设计网站的一个重要部分是上传图片。无论你是在网上找到免费的照片还是创建自定义图形,你都可以将它们添加到WordPress的媒体库中。这将存储你所有的媒体文件,并使你能够将它们插入到页面或文章中:

WordPress媒体库

WordPress媒体库

此外,你可能还得向WordPress添加其他类型的文件。如果一切工作正常,你应该能够在帖子、页面或媒体库中上传文件,如文档、音频或视频:

上传文件至WordPress

上传文件至WordPress

然而,在上传新的图片或其他文件时,你可能会遇到一个错误。这将显示一个信息:”WordPress无法将附件插入数据库”。虽然这主要发生在上传的文件上,但它也可能使你无法发布新的文章。

在大多数情况下,这个错误发生在你的服务器不能支持你试图使用的资源量。如果你有一个共享主机计划,这些问题也可能是由另一个网站收到意外的高流量导致的。

下面是 “WordPress无法将附件插入数据库 “错误的一些其他潜在原因:

  • PHP内存已耗尽

  • 文件名有特殊字符

  • 插件或主题冲突

  • 文件权限不正确

当你看到这个错误时,你将无法在你的网站上使用文件。要继续定制你的页面和文章,你需要解决这个问题,并尝试重新上传文件。

如何修复 “WordPress无法将附件插入数据库 “的错误

“WordPress无法将附件插入数据库” 的错误会阻止你向你的网站上传新文件。由于媒体是网页设计的一个重要部分,你需要知道如何解决这个问题。

不多说了,下面是如何解决WordPress的这个图片上传问题的方法

1. 调整图像的大小

当你上传新的图片到WordPress时,这会占用你服务器上的空间。如果这些图片太大,你可能会使你的服务器分配的资源超载。另外,它可能会增加你的页面加载时间。

如果你收到 “无法将附件插入数据库 “的错误,你可能超过了最大上传尺寸。根据你的WordPress主机供应商,这通常在4到128MB之间。

对于典型的WordPress用户来说,你可能永远不会超过这个限制。然而,像摄影作品集这样的重媒体网站可能会遇到上传错误。

在这种情况下,你可以尝试调整你的图片大小。一般来说,WordPress的最大尺寸是1024px。最好是避免上传任何大于这个尺寸的图片。

为了进一步优化你的图像,考虑只使用PNG、JPEG(JPG)或GIF文件。这将导致高质量的图像和小的文件大小。

此外,压缩你的所有图片也很重要。虽然WordPress会自动应用图像压缩,但这可能不足以大大减少文件的大小。

为了确保你的服务器不超载,你可以使用一个压缩插件,如EWWW图像优化器。这个工具可以自动压缩、调整大小和重新调整图像,因此它们对WordPress是优化的:

EWWW Image Optimizer

EWWW Image Optimizer

另外,EWWW图像优化器可以对你的图像进行无损和有损压缩。如果图像文件大小导致 “WordPress无法将附件插入数据库 “的错误,应用正确的压缩可以解决这个问题。

2. 更改文件名

解决 “WordPress无法将附件插入数据库”的错误可能就像改变文件名一样简单。基于你的数据库是如何配置的,它可能有字符集或排列方式来阻止某些文件名。

如果你看到 “无法将附件插入数据库 “的错误,WordPress无法将你上传的文件输入到MySQL数据库。它的默认设置可能不允许特殊字符。

为了解决这个问题,试着重新命名文件。确保删除任何不必要的符号或标点符号。最好使用由破折号或下划线隔开的词来代替:

图像文件名称

图像文件名称

一旦你这样做,尝试重新上传文件。如果仍然不成功,请继续使用下一个方法!

3. 停用冲突的插件和主题

由于WordPress是一个开源的平台,第三方开发者可以出售他们自己的主题和插件供你使用。这些工具中的一些可能编码很差,导致与你网站上的其他软件发生冲突。

每当WordPress发生错误时,评估它是否来自于插件或主题冲突是一个好主意。要开始,你需要暂时停用你的插件。

只需选择当前激活的插件,然后在批量操作菜单中选择 “停用“:

停用所有WordPress插件

停用所有WordPress插件

接下来,尝试再次上传文件。如果它起作用,那么你的一个插件就会导致这个问题。

现在,一个接一个地重新激活你的插件,并在每次重新激活后尝试上传文件。这将帮助你找出哪个插件触发了 “无法向数据库插入附件 “的错误。

一旦你找到罪魁祸首,你可能想从你的网站上删除它,或联系其开发者,告诉他们这个问题。

你的主题也有可能导致冲突。你可以通过激活一个默认的WordPress主题,如Twenty Twenty-Three,快速检查是否是这种情况。

如果这能解决这个错误,你很可能需要使用一个不同的主题。然而,你的文件上传问题可能是由一个完全不同的问题导致的。在这种情况下,是时候对你的数据库进行故障排除了。

4. 检查你的数据库大小

当一张图片不能上传到WordPress时,可能没有足够的服务器资源来支持该文件。要看是否是这种情况,你可以检查你的数据库大小。这将告诉你你的图片、视频和其他文件占用了多少磁盘空间

比如下方一个服务器提供商,你可以在服务器管理后台中轻松看到你的磁盘使用情况。这是你的文件和数据库的资源组合。

一旦你登录到你的账户,点击WordPress Sites标签。然后,在 “Disk Usage“一栏中查看:

某服务器磁盘使用情况

某服务器磁盘使用情况

你的资源使用情况也会出现在特定网站的Analytics部分。进入Resources > Disk space,查看你的存储限制和当前使用情况:

磁盘空间的使用和限制

磁盘空间的使用和限制

你也可以直接在仪表板上查看这些信息。在Resource usage下,点击Disk usage旁边的 “Learn more“按钮:

磁盘使用情况

磁盘使用情况

在弹出的窗口中,你会看到你的磁盘使用情况的分类。它将显示你的总允许空间,以及你的文件和数据库的当前大小:

资源使用明细

资源使用明细

无论您使用的是哪一个主机服务器的产品,你可以在你的WordPress仪表板上跟踪这些信息。进入工具>站点健康>信息,找到目录和大小

这将显示你的数据库大小,以及关于你不同目录的信息:

WordPress站点健康中的目录大小

WordPress站点健康中的目录大小

如果你的磁盘空间使用量接近你的主机供应商设定的限制,你很可能需要升级到一个更高的计划。

5. 增加PHP的内存限制

为了存储你的文件,你的网站需要有内存。当你选择一个主机计划时,你的主机将决定你的网站的PHP内存限制。

随着你的网站的发展,你需要添加新的文件,插件,主题,甚至是自定义代码。这意味着你将会使用更高的内存水平。如果你超过了你的限制,WordPress将没有足够的内存来存储新的文件,这可能会导致 “WordPress无法向数据库插入附件 “的错误。

当WordPress不能上传文件时,你可以尝试增加你的PHP内存限制。这涉及到更新你的wp-config.php文件。然而,你可能想先备份你的网站。

然后,打开一个文件传输协议(FTP)客户端,如FileZilla。这将使你能够访问和编辑你网站的文件:

FileZilla

FileZilla

要使用FileZilla,你需要你的SFTP登录凭证,你可以登录您的主机提供商网站获取相关信息。

现在,回到FileZilla,打开站点管理器。选择SFTP – SSH文件传输协议,输入你的登录凭证,然后点击连接

在FileZilla中连接网站

在FileZilla中连接网站

一旦你连接到你的网站,找到远程站点框。在这里,你会看到一个有你网站文件的目录。

要编辑你的内存限制,打开public文件夹,找到wp-config.php文件:

编辑wp-config.php文件

编辑wp-config.php文件

右键单击该文件,选择查看/编辑,在文本编辑器中打开它。然后,找到这行代码。

define( ‘WP_MEMORY_LIMIT’, ‘256M’ );

如果你的内存限制小于256MB,你可能需要添加一个更高的数字。当你准备好后,保存文件并尝试上传图片到你的网站。

6. 开启WordPress调试模式

找到 “WordPress无法将附件插入数据库 “错误来源的另一个方法是启用WordPress的调试模式。WP Debug可以帮助你标记PHP错误和其他警告,这样你就不必自己去搜索代码了。

虽然你可以在WordPress中安装一个调试插件或手动启用这个程序。

当你登录到你的WordPress仪表板时,你会收到关于你网站上的错误的新警报。这些会告诉你到底是什么导致了这个问题,所以你会知道如何解决它。

一旦你找到 “WordPress无法将附件插入数据库 “错误的源头,确保禁用WordPress调试。因为它可能向前端的访问者显示PHP代码,让它启用可能会危及你的网站的安全。

7. 更新文件权限

如果你仍然在努力确定如何解决WordPress中的这个图片上传问题,你可能需要更新你的文件权限。这些限制了对特定用户的文件访问。如果你的文件权限配置不正确,你将不能上传新的文件到服务器。

要解决这个问题,你需要重新连接到你的SFTP客户端。然后,导航到public > wp-content,右击uploads文件,并点击文件权限

编辑WordPress上传的文件权限

编辑WordPress上传的文件权限

这将拉出关于你当前权限的信息。你会看到三个不同的用户组:所有者、组和公众。你可以控制这些用户中哪些人可以读、写和执行你的WordPress文件:

更改文件权限

更改文件权限

你的文件权限由一个权限代码表示。这意味着什么:

  • 第一位数字:指定所有者的文件权限

  • 第二位数字:指定组内用户的文件权限

  • 第三位数字:指定公众的文件权限

对于uploads文件,确保文件权限被设置为’744’。然后,选择只应用到目录

更新上传目录的权限

更新上传目录的权限

在你保存这些修改后,重新打开文件权限。这一次,你需要重新设置这个目录中所有文件的权限。

要做到这一点,将数字值设置为’644’。你还需要选择 “递归处理子目录“和 “只应用到文件“:

更新上传的文件权限

更新上传的文件权限

现在,试着重新上传你的WordPress文件。如果这些新的权限不能解决这个问题,试着把这些目录设置为 “755”。

8. 联系你的主机供应商

即使经过大量的故障排除,你可能仍然无法解决 “WordPress无法向数据库插入附件 “的错误。如果所有其他方法都失败了,你可以联系你的主机提供商寻求帮助。

小结

某些WordPress错误会阻止你向你的网站添加内容。当你看到一个 “WordPress无法将附件插入数据库”的消息时,你将无法上传文件或发布新的帖子。

为了让WordPress再次正常运作,你可以简单地尝试在重新上传文件之前等待几分钟。如果这不是一个临时性的错误,检查一下插件是否有冲突,增加你的PHP内存限制,或者打开WordPress调试。

标签: 数据库