DB2 docker共享内存段不能分配

我正在尝试使用DB2数据库设置docker镜像。 安装完成没有任何问题,但是当我尝试重新启动数据库时出现以下错误:

SQL1084C无法分配共享内存段。 SQLSTATE = 57019

我基于这个Dockerfile: https : //github.com/jeffbonhag/db2-docker他说,同样的问题应该通过添加命令来解决

sysctl kernel.shmmax=18446744073692774399 

允许内核分配更多内存,但错误仍然存​​在。

docker守护进程本身运行在Ubuntu 14.04上,它运行在MacOSX上的Parallels中。

编辑:经过一番search后,我发现这与下面的命令有关:

 UPDATE DB CFG FOR S0MXAT01 USING locklist 100000; 

您正在过度分配数据库内存堆,即docker无法满足内存需求。 看看下面的手册链接 。 这会给你一个在数据库内存中的内容的细目:

 Bufferpools The database heap The locklist The utility heap The package cache The catalog cache The shared sort heap, if it is enabled A 20% overflow area 

docker工人很高兴的时候,你可以在这些堆上摆弄(减less)任何堆。