程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> MYSQL啟動與退出以及鏈接故障恢復

MYSQL啟動與退出以及鏈接故障恢復

編輯:關於MYSQL數據庫

   1.服務器的啟動和關閉
在Linux和Windows平台下MySQL服務器的啟動方式有很大不同,這裡將分開介紹:

Linux平台:

Linux平台下,每一個進程都需由一個用戶來運行,MySQL最好不要以root用戶來運行。我們可創建一個mysql用戶和mysql組,MySQL服務器程序目錄和數據目錄由這個用戶和組所擁有,其它用戶沒有任何權限。以mysql用戶來運行MySQL服務器。

% mysqld --user=mysql     #即使以root用戶執行該命令,MySQL數據庫還是會與MySQL用戶ID關聯。
為了使服務器在系統啟動時自動以mysql用戶運行,需配置my.cnf配置文件 ,把user=mysql包含在[MySQLd]段中。

關閉服務器可用% mysql.server stop或% MySQLadmin -u root -p shutdown

Windows平台:

手動方式:直接運行c:\MySQLd命令。

作為服務方式:運行c:\mysqld-nt --install命令,把mysqld-nt安裝為windows的服務,此後,每當Windows啟動時,它就會自動運行。mysqld-nt是一個支持命名管道的MySQL服務器。運行c:\mysqld-nt --remove可把服務刪除。手動啟動關閉服務的方法是運行c:\net start mysql和c:\net stop MySQL命令。

2. 連接故障恢復
當由於誤刪mysql套接字時(/tmp/MySQL.sock),我們就不能通過套接字連接服務器。這時我們可通過tcp/ip來連接服務器,要建立一個tcp/ip連接,需用127.0.0.1代替locahost作為-h參數的值來連接服務器。如:

% MySQLadmin -h 127.0.0.1 -u root -p shutdown       #關閉服務器再重啟會重建套接字
當我們因為忘記root用戶密碼而不能連接服務器時,重設置密碼的步驟如:

用 % kill -TERM PID關閉服務器,用-TERM信息可使服務器在關閉前把內存中的數據寫入磁盤。如果服務器沒有響應,我們可用% kill -9 PID來強制刪除進程,但不建議這樣做。這時內存中的數據不會寫入磁盤,造成數據不完整。如果你是用mysql_safe腳本啟動MySQL服務器的,這個腳本會監控服務器的運行情況並在它被終止時重啟服務器,所以如需關閉服務器,要先終止該進程,然後再真正終止MySQLd進程。

接著用--skip_grant-tables啟動服務器。這時MySQL服務器將不使用權限表對連接操作進行驗證。你就可在不提供root密碼的情況下連接上服務器,並獲得root的權限。這樣你就可用上面介紹的修改密碼的方法重設root用戶的密碼。注意:連接上服務器後,要馬上執行flush privileges命令,使權限表讀入內存並生效,以阻止其他的連接。該語句還重新激活grant語句,在MySQL服務器不使用權限表時,grant語句被禁用。

修改完root用戶密碼後,我們就可關閉服務器並重啟使所有配置正常運作。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved