neo4j安装及内存分配
Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中,国内下载地址:ftp://neo4j.55555.io/neo4j/3.5.7/
1.安装jdk
jdk安装在root用户下
(1)检查自带jdk并卸载,检查命令如下:
rpm -qa|grep gcj
rpm -qa|grep jdk
(2)卸载jdk命令如下
rpm -e –nodeps java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
(3)解压jdk并配置环境变量
#解压安装包
tar -zxvf jdk-8u191-linux-x64.tar.gz
#配置环境变量
vi /etc/profile
#在文件内添加一下内容
export JAVA_HOME=/opt/jdk1.8.0_65
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
(4)刷新配置文件并检查Java版本
#刷新配置文件
source /etc/profile
#检查Java版本
java -version
2.安装neo4j
(1)解压neo4l
tar -zxvf neo4j-community-3.5.7-unix.tar.gz
(2)修改配置文件,除54行需要放开,其他可根据需求自由修改
vi neo4j-community-3.5.7/conf/neo4j.conf # 修改第22行load csv时l路径,在前面加个#,可从任意路径读取文件
#dbms.directories.import=import
# 修改35行和36行,设置JVM初始堆内存和JVM最大堆内存
# 生产环境给的JVM最大堆内存越大越好,但是要小于机器的物理内存
dbms.memory.heap.initial_size=5g
dbms.memory.heap.max_size=10g
# 修改46行,可以认为这个是缓存,如果机器配置高,这个越大越好
dbms.memory.pagecache.size=10g
# 修改54行,去掉改行的#,可以远程通过ip访问neo4j数据库
dbms.connectors.default_listen_address=0.0.0.0
# 默认 bolt端口是7687,http端口是7474,https关口是7473,不修改下面3项也可以
# 修改71行,去掉#,设置http端口为7687,端口可以自定义,只要不和其他端口冲突就行
#dbms.connector.bolt.listen_address=:7687
# 修改75行,去掉#,设置http端口为7474,端口可以自定义,只要不和其他端口冲突就行
dbms.connector.http.listen_address=:7474
# 修改79行,去掉#,设置http端口为7473,端口可以自定义,只要不和其他端口冲突就行
dbms.connector.https.listen_address=:7473
# 修改227行,去掉#,允许从远程url来load csv
dbms.security.allow_csv_import_from_file_urls=true
# 修改246行,允许使用neo4j-shell,类似于mysql 命令行之类的
dbms.shell.enabled=true
# 修改235行,去掉#,设置连接neo4j-shell的端口,一般都是localhost或者127.0.0.1,这样安全,其他地址的话,一般使用https就行
dbms.shell.host=127.0.0.1
# 修改250行,去掉#,设置neo4j-shell端口,端口可以自定义,只要不和其他端口冲突就行
dbms.shell.port=1337
# 修改254行,设置neo4j可读可写
dbms.read_only=false
(3)启动neo4j
./neo4j-community-3.5.7/bin/neo4j start
(4) 登录验证,访问地址:http://10.169.169.32:7474/browser/,默认用户:neo4j 默认密码:neo4j
3.neo4j内存分配方案优化
若安装的服务器只应用于neo4j数据库,官方提供了一个最佳方案配置运行以下命令:
./neo4j-admin memrec --database=graph.db
运行的内容为:
WARNING: Max 1024 open files allowed, minimum of 40000 recommended. See the Neo4j manual.
# Memory settings recommendation from neo4j-admin memrec:
#
# Assuming the system is dedicated to running Neo4j and has 15600m of memory,
# we recommend a heap size of around 5000m, and a page cache of around 6600m,
# and that about 4000m is left for the operating system, and the native memory
# needed by Lucene and Netty.
#
# Tip: If the indexing storage use is high, e.g. there are many indexes or most
# data indexed, then it might advantageous to leave more memory for the
# operating system.
#
# Tip: The more concurrent transactions your workload has and the more updates
# they do, the more heap memory you will need. However, don't allocate more
# than 31g of heap, since this will disable pointer compression, also known as
# "compressed oops", in the JVM and make less effective use of the heap.
#
# Tip: Setting the initial and the max heap size to the same value means the
# JVM will never need to change the heap size. Changing the heap size otherwise
# involves a full GC, which is desirable to avoid.
#
# Based on the above, the following memory settings are recommended:
dbms.memory.heap.initial_size=5000m
dbms.memory.heap.max_size=5000m
dbms.memory.pagecache.size=6600m
#
# The numbers below have been derived based on your current data volume in database and index configuration of database 'graph.db'.
# They can be used as an input into more detailed memory analysis.
# Lucene indexes: 0k
# Data volume and native indexes: 123700k
若改服务器只安装neo4j,配置文件直接修改为如下,然后重启:
# 生产环境给的JVM最大堆内存越大越好,但是要小于机器的物理内存
dbms.memory.heap.initial_size=5000m
dbms.memory.heap.max_size=5000m
# 修改46行,可以认为这个是缓存,如果机器配置高,这个越大越好
dbms.memory.pagecache.size=6600m
注:若服务器还需安装其他应用 ,需要排除掉应用的内存需要,还需要给neo4j的索引等留有内存,配置按比例减小。
neo4j安装及内存分配相关推荐
- Eigen向量化内存对齐/Eigen的SSE兼容,内存分配/EIGEN_MAKE_ALIGNED_OPERATOR_NEW
1.总结 对于基本数据类型和自定义类型,我们需要用预编译指令来保证栈内存的对齐,用重写operator new的方式保证堆内存对齐.对于嵌套的自定义类型,申请栈内存时会自动保证其内部数据类型的对齐,而 ...
- 利用TCMalloc替换Nginx和Redis默认glibc库的malloc内存分配
TCMalloc的全称为Thread-Caching Malloc,是谷歌开发的开源工具google-perftools中的一个成员.与标准的glibc库的Malloc相比,TCMalloc库在内存分 ...
- C++中的动态内存分配
1.Cpp中的内存分配 了解动态内存在C++中是如何工作的是成为一名合格的C++程序员必不可少的.C++程序中的内存分为两个部分: 栈:在函数内部声明的所有变量都将占用栈内存. 堆:这是程序中未使用的 ...
- 【 C 】动态内存分配案例分析
声明一个指向char类型的指针,可以在声明的时候就对其进行初始化,这样是合理的. 例如: E1: #include <stdio.h> #include <stdlib.h> ...
- 内存分配策略(一):JVM栈桢及方法调用详解
JVM 线程堆栈分析过程详解 在这篇文章里我将教会你如何分析JVM的线程堆栈以及如何从堆栈信息中找出问题的根因.在我看来线程堆栈分析技术是Java EE产品支持工程师所必须掌握的一门技术.在线程堆栈中 ...
- Advanced Memory Allocation 内存分配进阶
Advanced Memory Allocation 内存分配进阶 URL: http://blog.csdn.net/amwihihc/article/details/7481656 May 01, ...
- Memcache 内存分配策略和性能(使用)状态检查
一直在使用Memcache,但是对其内部的问题,如它内存是怎么样被使用的,使用一段时间后想看看一些状态怎么样?一直都不清楚,查了又忘记,现在整理出该篇文章,方便自己查阅.本文不涉及安装.操作.有兴趣的 ...
- 从更底层研究C\C++动态内存分配
2019独角兽企业重金招聘Python工程师标准>>> 以前在学C++ 的时候,一直不懂:动态内存分配的本质,或者更加深入到底层的意义.虽然说,动态内存分配就是,随机在内存中分配一个 ...
- Java04-day04【IDEA(概述、启动配置、项目结构、内容辅助键、快捷键、模块操作)、数组(定义详解、动态初始化、访问)、内存分配、数组内存图】
java零基础入门到精通(2019版)[黑马程序员] 视频+资料:[链接:https://pan.baidu.com/s/1MdFNUADVSFf-lVw3SJRvtg 提取码:zjxs] &qu ...
- linux内核函数kmalloc,Linux_Linux平台上几个常见内核内存分配函数,* kmallocPrototype:#incl - phpStudy...
Linux平台上几个常见内核内存分配函数 * kmalloc Prototype: #include void *kmalloc(size_t size, int flags); Kmalloc分配一 ...
最新文章
- 我对虚拟化的认识(一)
- 简单剖析智能指针的思想
- 周期均方根和有效值的区别_茅台王子酒和迎宾酒的区别是什么?
- adapter pattern java_适配器模式(Adapter Pattern)
- before css 旋转_CSS 巧用 :before和:after
- 一步一步配置aspnetdb数据库
- 简单的01背包和完全背包
- mysql数据库查询笔记_mysql笔记: 查询
- 解决datafountain比赛提交.csv文件报错问题
- 配置 .vimrc 解决 Vim / gVim 在中文 Windows 下的字符编码问题
- osgEarth世界坐标和经纬度坐标相互转换
- Ubuntu 20.04上编译OpenSSL的编译选项设置
- Xcode7 网络请求报错:The resource could not be loaded be
- fatal: You have not concluded your merge (MERGE_HEAD exists). Please, commit your changes before you
- s3cmd 快速评估RADOSGW的性能
- 戴尔服务器温度显示器,选择Dell UltraSharp 27的四大理由:有温度的科技更近人心...
- 转载《CSDC开发者大会感想》
- 【UEFI基础】UEFI Shell
- 树洞程序php,树洞表白墙程序
- 基于springboot+vue+element-ui的仿百度云局域网网盘
热门文章
- 三极管与恒流源电路(TI学习总结)
- JAVAweb开发技术-------(七)POI导入导出excel技术
- 小知识点日记 2013-1-17 至 2013-6-13
- 经验:常见木马和未授权控制软件的关闭 3
- 20190628 《此生,未完成》-- 于娟
- 如何免费自动将邮件发送到多个邮件地址 - 自动邮件发送器使用教程
- 计算机网络笔记2 应用层
- 《论文阅读》Joint Demosaicing and Denoising with Self Guidance
- mysql删不掉怎么办_mysql删除不彻底的解决方法_MySQL
- 面经分享:美团面试也太难了,4面美团终成Offer