首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >内存不足,还是磁盘空间不足?

内存不足,还是磁盘空间不足?
EN

Server Fault用户
提问于 2013-09-14 11:36:58
回答 1查看 15.8K关注 0票数 3

我正在运行一个数据库加载进程(osm2pgsql),它失败了:

代码语言:javascript
复制
Processing: Node(17404k 148.8k/s) Way(1351k 6.38k/s) Relation(9520 29.94/s)way_done failed: ERROR:  could not extend file "base/140667/152463": No space left on device
HINT:  Check free disk space.
(7)
Arguments were: 187226311, 

在导入开始时,mem报告:

代码语言:javascript
复制
             total       used       free     shared    buffers     cached
Mem:           31G        29G       2.4G         0B       178M        24G
-/+ buffers/cache:       4.5G        26G
Swap:           0B         0B         0B

在结束前不久:

代码语言:javascript
复制
             total       used       free     shared    buffers     cached
Mem:           31G        31G       227M         0B       178M        26G
-/+ buffers/cache:       4.8G        26G
Swap:           0B         0B         0B

同时,df在开始时:

代码语言:javascript
复制
Filesystem     1K-blocks      Used Available Use% Mounted on
/dev/vda1       10309828   7879412   1997036  80% /
udev            16470572        12  16470560   1% /dev
tmpfs            6590080       260   6589820   1% /run
none                5120         0      5120   0% /run/lock
none            16475196         0  16475196   0% /run/shm
none              102400         0    102400   0% /run/user
/dev/vdb       247709760 105978300 129148548  46% /mnt

从大约3/4的过程中。使用占100%。

代码语言:javascript
复制
Filesystem     1K-blocks      Used Available Use% Mounted on
/dev/vda1       10309828   9854348     22100 100% /
udev            16470572        12  16470560   1% /dev
tmpfs            6590080       260   6589820   1% /run
none                5120         0      5120   0% /run/lock
none            16475196         0  16475196   0% /run/shm
none              102400         0    102400   0% /run/user
/dev/vdb       247709760 105978300 129148548  46% /mnt

我无法识别磁盘上任何正在填充/dev/vda1 1的实际文件:

代码语言:javascript
复制
du -h -d 3 / 2>/dev/null | grep -v ^0 > /tmp/o2p1.txt
[start import]
du -h -d 3 / 2>/dev/null | grep -v ^0 > /tmp/o2p2.txt

diff /tmp/o2p1.txt /tmp/o2p2.txt

什么都没透露出来。

到底怎么回事?

EN

回答 1

Server Fault用户

回答已采纳

发布于 2013-09-14 11:36:58

好吧,很简单。Postgres数据库位于/dev/vda1 1上,并且变得越来越庞大。它没有出现在du命令中,因为我没有以root用户的身份运行它。

我想,当磁盘被填满后,Postgres停止保存到磁盘,并将其全部保存在内存中--直到内存耗尽。

票数 2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/538917

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档