如何减少数据库大小?

时间:2014-03-08 16:56:09

标签: php mysql database magento phpmyadmin

我正在尝试减小Magento数据库的大小。我遵循了本文中的简单说明,其中涉及通过phpMyAdmin清空日志文件,并通过Magento后端启用日志清理。 http://docs.nexcess.net/article/magento-database-maintenance.html

从这样做,我的数据库从1500MB减少到500MB。

phpMyAdmin只允许我导入小于50MB的数据库。有谁知道如何进一步减少数据库或如何解决phpMyAdmin的问题只允许我导入小于50MB的数据库?

注意:我的网站仅有44种产品,仅在2周内上线。我很惊讶数据库太大了。还请注意,在编程时尤其是数据库时,我是一名新手。

由于

4 个答案:

答案 0 :(得分:2)

这一直是移动数据库的主要问题。问题是制作转储文件比读取它们更容易,并且由于PHP的上传限制,它通常不是phpMyAdmin可以帮助你的东西。虽然史蒂夫马丁的解决方案可以适用于较小的表,但如果你有一个包含数千行的更大表,该怎么办?

最好和最简单的解决方案是read the file into mysql directly。不幸的是,并非每个人都可以通过命令行访问mysql。

我发现的下一个最佳解决方案是使用PHP解析器来读取文件并执行它。有一个parser you can use来帮助它。

关于如何减小尺寸的主要问题,我不确定你能否在某一点之后做到这一点,不是没有拆分数据库和存档记录。你的数据库迟早会变得笨拙。

答案 1 :(得分:0)

在phpmyadmin中单独导出每个表,然后您可以导入它们。

要执行此操作 - 在PHPMyAdmin中打开数据库之前不要按导出按钮,然后您将在导出页面上看到所有表格突出显示,一次选择一个并保存。

要导入 - 创建一个新数据库,打开它然后按每个表的导入

然后,您还将找出哪个表格大磁铁可能直接在表格中存储帖子中的图像。

enter image description here

答案 2 :(得分:0)

您是否尝试过使用MySQL Workbench? http://dev.mysql.com/downloads/tools/workbench

虽然你应该弄清楚为什么它如此之快如此之快。

答案 3 :(得分:0)

phpmyadmin没有最大导入文件大小限制

文件大小限制由PHP在php.ini中设置,您所要做的就是更改最大值,然后您就可以上传和导入大文件 - 您可以导入任意大小的文件。

你的php.ini文件的位置取决于你的Linux风格和你的服务器设置,但它应该在某个地方的/ etc文件夹下(同时确保你正在编辑与Apache的PHP相对应的php.ini设置,有时在命令行上有一个PHP的php.ini是不同的)。更改或添加这些指令:

memory_limit = 512M
upload_max_filesize = 512M
post_max_size = 512M

然后重新启动您的Web服务器以应用这些配置更改并刷新您的phpmyadmin导入页面。您将看到新的最大文件大小限制,您将能够上传大文件。这是我服务器的屏幕截图:

phpmyadmin file size limit is not a limit

或者编辑您的.htaccess文件以设置php配置:

php_value upload_max_filesize 512M
php_value post_max_size 512M
php_value memory_limit 512M

(对于htaccess,您的服务器需要配置为允许这样做,但如果您在无法控制php.ini的服务器上,您将发现调整Magento很困难。对于运行Suhosin的服务器修补程序,您可能还需要在suhosin.memory_limit=512M中设置suhosin.ini,但我从未需要这样做)

另请注意,phpmyadmin可以导入压缩的SQL。

您可能希望在导入文件后减少最大上传文件大小。

关于减少数据库大小,为了记录,我运行了一个包含9000个产品的商店,数据库的总大小为458MB。

所以我还建议您使用phpmyadmin按大小对表进行排序,看看数据库大小占主导地位。

(有关查找和更改php.ini以允许更大的上传文件大小的更多信息,请参阅答案和评论here