64位系统,插入报错

,经过编译生成的mongodb,文件超过2GB提示错误

rs0:PRIMARY> db.Data.insert({"name":"test"})
WriteResult({
        "nInserted" : 0,
        "writeError" : {
                "code" : 10085,
                "errmsg" : "insertDocument :: caused by :: 10085 can't map file memory"
        }
})
阅读 2.4k
1 个回答
新手上路,请多包涵

根据官方文档,目前调整了系统参数:
上面安装了redis
MEM 32GB,

vi /etc/sysctl.conf

vm.overcommit_memory = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1

vi /etc/profile

ulimit -f unlimited
ulimit -t unlimited
ulimit -v unlimited
ulimit -n 64000
ulimit -m unlimited
ulimit -u 64000

source /etc/profile

ulimit -a

core file size (blocks, -c) 1
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 256821
max locked memory (kbytes, -l) 64
max memory size (kbytes, -m) unlimited
open files (-n) 64000
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 1024
cpu time (seconds, -t) unlimited
max user processes (-u) 64000
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
#

重启了数据库,插入暂时恢复正常

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进