知识库

支持 Neo4j 时有用的命令

查询日志中 50 个最慢的查询

$ grep -i "INFO" query.log | sort -r -n -k 4 | head -50 > long_queries.log

在调试或消息日志中查找最长的 GC 暂停

$ grep -n -i blocked debug.log | sort -r -n -k 11 | head -10

去除 neo4j.conf 文件中的所有注释/空行

$ grep -v "^#" neo4j.conf | sed -e '/^$/d' | sort

在 jar 文件目录中查找类

$ for i in *.jar; do jar -tvf "$i" | grep -Hsi MyClass && echo "$i"; done

获取线程转储

$ jstack <neo4j process ID>

或强制进行线程转储。当 jstack <pid> 没有响应(进程挂起)时使用

$ sudo jstack -F <neo4j process ID>

获取堆转储

$ jmap -dump:format=b,file=<directory>/heapdump.hprof <neo4j process ID>