编译RocksDB过程中提示Cannot allocate memory的解决方法
问题现象描述
编译RocksDB过程中提示“Cannot allocate memory”。
关键过程、根本原因分析
执行make -j编译RocksDB时,会使用所有CPU核数,导致内存不够。
结论、解决方案及效果
- 删除当前目录下的所有文件和子目录。
rm -rf *
- 使用CMake工具编译安装RocksDB数据库,并指定安装路径为“/usr/local/rocksdb”,该路径可根据实际情况修改。
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/rocksdb -DWITH_SNAPPY=1 -DWITH_ZLIB=1 -DWITH_LZ4=1 -DWITH_ZSTD=1 -DWITH_BZ2=1 ..
- 查看CPU核数。
lscpu
- 再次执行编译命令,同时减少CPU核数。
make -j 8
父主题: 故障排除