導航:首頁 > 程序命令 > jmapdump命令

jmapdump命令

發布時間:2024-03-17 21:28:52

⑴ 如何導出java應用程序的內存快照文件

問了一下我之前的在遠標教育的大學同學,他說在windows下找到要導出的Java應用的進程號。比如我要導出本機的Eclipse的內存快照,因為Eclipse也是Java應用。首先要找到Eclispe的進程號。在命令行輸入:tasklist | findstr eclipse。

可以看到,Eclispe的進程號是8052。然後在命令行輸入:jmap -mp:format=b,file=elipse.hprof 8052。file=elipse.hprof意思是設置生成的脊乎文件名,8052就是Java程序的進程號。

如果是在linux系統下面,在命悔薯令行輸入:ps -ef | grep eclipse。

可以看到eclipse的進程號是2622。櫻前悉同樣,在命令行輸入:jmap -mp:format=b,file=elipse.hprof 2622。

把生成的elipse.hprof在SecureCRT命令行輸入:sz elipse.hprof,把文件下載到本地,用MAT之類的工具進行分析就可以了。

⑵ 幾種常見的操作tomcat的linux命令

重啟tomcat
ps x 查看pid
kill -9 pid 殺死進程
/app/tomcat/bin/startup.sh 啟動tomcat
追蹤日誌
tail -f /app/tomcat/log/*.log
配置文件
vi /app/tomcat/webapp/root/WEB-INF/server.properties 查看伺服器配置
vi /app/tomcat/webapp/root/WEB-INF/web.xml 查看後端文件位置
vi /app/tomcat/webapp/root/WEB-INF/common-applicationcontext.xml 查看資料庫
查看內存溢出
top 查看系統性能
jmap -heap pid 列印heap的概要信息
jmap -histo pid 列印每個class的實例數目,內存佔用,類全名信息
jmap -mp:format=b,file=heap.bin pid 輸出heap信息到heap.bin文件
jhat -J-mx768m heap.bin 分析heap.bin文件
最好使用eclipse的MAT查看heap.bin,相比jhat等更加直觀,容易發現內存溢出
查看死鎖
jstack -l pid > deadlock.jstack 輸出stack信息到deadlock.jstack
vi deadlock.jstack 使用vi查看
資料庫導出
/usr/local/mysql/bin/mysqlmp -u root -p test > test_new.sql
資料庫導入
/usr/local/mysql/bin/mysql -u root -p test < test_new.sql
選擇性查看日誌
grep * /app/tomcat/log/*.log|cut -d '#' -f 8-9|sort -t '#' -u

⑶ linux下java mp文件在哪兒

如果所使用的應用伺服器是tomact,mp文件默認在catalina.out日誌文件里;
如果不是則可以查看java環境變數設置的位置,也就知道在mp文件的位置了;
如果沒有生成mp文件或者是生成錯誤,請按照一下幾種方法來修復:
系統默認的core文件生成路徑是 /var/logs,但是 /var/logs 目錄並非系統自帶的,系統初始安裝默認自帶的是/var/log,最終導致該系統出現core mp後並沒能生成core文件,因此如何查詢和修改系統默認的core mp文件生產路徑呢?方法如下:
一. 查詢core mp文件路徑:
方法1:
# cat /proc/sys/kernel/core_pattern
方法2:
# /sbin/sysctl kernel.core_pattern
二. 修改core mp文件路徑:
方法1:臨時修改:修改/proc/sys/kernel/core_pattern文件,但/proc目錄本身是動態載入的,每次系統重啟都會重新載入,因此這種方法只能作為臨時修改。
/proc/sys/kernel/core_pattern
例:echo 『/var/log/%e.core.%p』 > /proc/sys/kernel/core_pattern
方法2:永久修改:使用sysctl -w name=value命令。
例:/sbin/sysctl -w kernel.core_pattern=/var/log/%e.core.%p

⑷ 內存mp文件導出與查看

生成mp文件的命令:
jmap -mp:format=b,file=20170307.mp 16048
file後面的是自定義的文件名,最後的數字是進程的pid

使用jvisualvm來分析mp文件:
jvisualvm是JDK自帶的Java性能分析工具,在JDK的bin目錄下,文件名就叫jvisualvm.exe。
jvisualvm可以監控本地、遠程的java進程,實時查看進程的cpu、堆、線程等參數,對java進程生成mp文件,並對mp文件進行分析。
像我這種從伺服器上mp下來文件也可以直接扔給jvisualvm來分析。
使用方式:直接雙擊打開jvisualvm.exe,點擊文件->裝入,在文件類型那一欄選擇堆,選擇要分析的mp文件,打開。

閱讀全文

與jmapdump命令相關的資料

熱點內容
方舟非官方伺服器怎麼賺錢 瀏覽:512
明日之後伺服器無效是怎麼回事 瀏覽:263
蛋殼公寓app如何查水電表 瀏覽:713
ad20庫中的51單片機怎麼找 瀏覽:618
阿里雲伺服器有點卡嗎 瀏覽:215
蘋果7如何讓app後台運行 瀏覽:170
耐克app預售產品哪裡看 瀏覽:209
補全演算法一年級 瀏覽:131
evd數據調校軟體加密 瀏覽:442
app聽課與微信如何設置分屏 瀏覽:911
加密的excel怎麼撤銷 瀏覽:43
java動態數組初始化 瀏覽:978
編譯後程序塊過大不適合 瀏覽:675
李煜pdf 瀏覽:847
python寫游戲邏輯 瀏覽:489
pdf轉換成word免費版在線轉換 瀏覽:464
荒廢了三年還能做程序員嗎 瀏覽:658
阿里雲內網vpn伺服器 瀏覽:103
l命令第一個點對第二個點對不上 瀏覽:829
oracle導出表命令 瀏覽:911