昨天折騰資料庫的時候,啟動mysql總是報錯,說3306端口被占用,但是netstat -ntlp |grep mysql
和ps -aux |grep mysql總是沒有找到3306端口,
最後使用lsof -i :3306查到果然被占用,kill啟動即可
下面貼出lsof的詳細使用,
lsof(list open files)是一個列出目前系統打開檔案的工具。在linux環境下,任何事物都以檔案的形式存在,通過檔案不僅僅可以通路正常資料,還可以通路網絡連接配接和硬體。是以如傳輸控制協定 (TCP) 和使用者資料報協定 (UDP) 套接字等,系統在背景都為該應用程式配置設定了一個檔案描述符,無論這個檔案的本質如何,該檔案描述符為應用程式與基礎作業系統之間的互動提供了通用接口。因為應用程式打開檔案的描述符清單提供了大量關于這個應用程式本身的資訊,是以通過lsof工具能夠檢視這個清單對系統監測以及排錯将是很有幫助的。
每行顯示一個打開的檔案,若不指定條件預設将顯示所有程序打開的所有檔案。
lsof輸出各列資訊的意義如下:
COMMAND:程序的名稱 PID:程序辨別符
USER:程序所有者
FD:檔案描述符,應用程式通過檔案描述符識别該檔案。如cwd、txt等 TYPE:檔案類型,如DIR、REG等
DEVICE:指定磁盤的名稱
SIZE:檔案的大小
NODE:索引節點(檔案在磁盤上的辨別)
NAME:打開檔案的确切名稱
常用參數
lsof文法格式是:
lsof [options] filename
實用指令
本文轉自布拉君君 51CTO部落格,原文連結:http://blog.51cto.com/5148737/1570310,如需轉載請自行聯系原作者