恢复 4 GB 大小的转储文件时,Mysql 在成功完全恢复约 10 分钟后出现内存不足的情况。错误详细信息如下。
配置:Mysql版本:Mysql 5.0.41 32位max_allowed_packet = 300M
mysql>源 my_dump.sql
错误:
Query OK, 2310 rows affected (0.69 sec)
Records: 2310 Duplicates: 0 Warnings: 0
mysql: Out of memory (Needed 1564047040 bytes)
mysql: Out of memory (Needed 1564047048 bytes)
解决方案将会非常可观。
答案1
这听起来很像您的 RAM 在恢复转储过程中已满。您是否使用 free -m 检查过 RAM 和 SWAP 是否已满?
如果是这种情况,一种解决方案可能是手动拆分转储(这样每个表都有自己的文件并且您可以逐步恢复它们)或者您可以增加机器的 SWAP 空间。
答案2
您可以通过创建交换文件来临时增加交换空间。这不需要重新启动或重新对磁盘进行分区。
以下是如何