在MySQL中,pid是指進程ID,它可以用來標識唯一的MySQL進程。而mysql.pid則是MySQL在運行時自動生成的一個文件,它存儲了當前MySQL進程的進程ID。
root@ubuntu:~# ls /var/run/mysqld/
mysql.pid
每當啟動MySQL服務時,mysql.pid文件就會被自動生成,它的位置一般在/var/run/mysqld/目錄下。而每當MySQL服務被關閉時,該文件也會被自動刪除。
在MySQL運行期間,我們可以使用mysqladmin命令查看進程ID:
root@ubuntu:~# mysqladmin -u root -p status
Enter password:
Uptime: 5 Threads: 2 Questions: 5 Slow queries: 0 Opens: 17 Flush tables: 1 Open tables: 11 Queries per second avg: 1.000
在上面的輸出結果中,Threads后面的數字2即為MySQL進程的進程ID。而如果我們直接查看mysql.pid文件,也能得到同樣的結果:
root@ubuntu:~# cat /var/run/mysqld/mysql.pid
1234
當我們需要手動關閉MySQL服務時,我們可以使用pid來殺掉MySQL進程:
root@ubuntu:~# kill -9 `cat /var/run/mysqld/mysql.pid`
這條命令會強制殺掉進程ID為mysql.pid中所記錄的MySQL進程。但需要注意的是,強制殺進程可能會導致數據損壞或丟失,所以在執行該命令前,一定要先備份好相關的數據。