2010-03-22 67 views

回答

5

你必須開始Valgrind的控制下的服務器。只需採取服務器的正常啓動命令,並將其添加到valgrind

Valgrind將附加到您的主「服務器」進程產生的每個進程。當每個線程或進程結束時,Valgrind會輸出它的分析結果,所以我建議將它輸出到一個文件中(不知道它是否出現在stderr或stdout上)。

如果您的常用啓動命令是/usr/local/mysql/bin/mysqld,服務器而不是valgrind /usr/local/mysql/bin/mysqld

如果您通常使用腳本(如/etc/init.d/mysql start)啓動服務,您可能需要查看腳本內部腳本以執行腳本的實際命令,然後運行腳本而不是腳本。

不要忘了將--leak-check=full選項傳遞給valgrind以獲取內存泄漏報告。