在恢复一个大小为4 GB的转储文件的时候,Mysql会在10分钟成功完全还原后给出内存不足的情况。 错误细节在下面给出。
configuration:Mysql版本:Mysql 5.0.41 32位max_allowed_packet = 300M
mysql> source 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)
解决scheme将是可观的。
这听起来很像你的RAM在恢复转储的过程中已经满了。 如果你的RAM和SWAP运行满了,你用free -m检查过吗?
如果是这样的话,一种解决scheme可能是手动拆分转储(因此每个表都有它自己的文件,并且可以一步一步地恢复)或者可以增加机器的SWAP空间。
您可以通过创build交换文件临时增加交换空间。 这赢了,需要重新启动或磁盘重新分区。
这是如何做的