程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> 如何啟動與終止MySQL數據庫

如何啟動與終止MySQL數據庫

編輯:關於MYSQL數據庫

由於MySQL服務器具有多種安裝分發,而且能夠運行在多種操作平台之上,因此它的啟動與停止的方法也多種多樣。你可以根據實際情況使用其中的一種。在你安裝、升級或者維護系統時,你可能需要多次啟動和終止服務器,你需要了解啟動和終止服務器的方方面面。

直接運行守護程序

1、你可以采用的方法

一般的,你可以有以下幾種選擇啟動MySQL服務器,它們的功能和用法幾乎是相同的,所以一起在這裡介紹:

直接使用MySQL守護程序MySQLd啟動數據庫系統,尤其是Win32平台上的分發,這是因為,在Win32平台上沒有MySQL.server等服務器腳本可用。

通過調用safe_mysqld腳本,它接受與mysqld相同的參數,並試圖為MySQLd決定正確的選項,然後選擇用那些運行它。

2、腳本或者守護程序的存放位置

對於二進制分發的安裝,mysqld守護程序安裝在MySQL安裝目錄的bin目錄下,或者可在MySQL源代碼分發的libexec目錄下找到,缺省為/usr/local/libexec/。對於rpm分發,MySQLd應該位於PATH變量決定的程序搜索路徑中,因此可以直接引用。

safe_mysqld仍舊是一個腳本,並且只存在於Unix平台的分發中。safe_mysqld腳本安裝在MySQL安裝目錄的bin目錄下,或可在MySQL源代碼分發的scripts目錄下找到。對於rpm分發,該腳本應該位於PATH變量決定的程序搜索路徑中,因此可以直接引用。

3、為什麼要使用safe_MySQLd腳本

safe_mysqld接受和mysqld同樣的參數,並試圖確定服務器程序和數據庫目錄的位置,然後利用這些位置調用服務器。 safe_MySQLd將服務器的標准錯誤輸出重定向到數據庫目錄中的錯誤文件中,並以記錄的形式存在。啟動服務器後,safe_mysqld還監控服務器,並在其死機時重新啟動。safe_MySQLd通常用於Unix的BSD風格的版本。

如果,你曾經為root或在系統啟動程序中啟動safe_mysqld,其錯誤日志將有root擁有。如果再用非特權的用戶身份調用safe_MySQLd,則可能引起“Access DenIEd”(即,“所有權被拒絕”)的錯誤。此時可以刪除錯誤文件在試一次。

由於safe_mysqld腳本的功能,使用safe_mysqld腳本明顯比直接啟動MySQLd守護程序來得有效。

4、啟動服務器的完整過程

對於Unix平台上的分發,如果你以root或在系統引導期間啟動sqfe_mysqld,出錯日志由root擁有,這可能在你以後試圖用一個非特權用戶調用safe_mysqld時將導致“permission denIEd”(權限拒絕)錯誤,刪除出錯日志再試一下。因此建議你在啟動服務器前,首先切換到一個專門的用戶MySQL。

具體方法如下:

Unix平台

$ su MySQL

$ safe_mysql & (或者 MySQLd & ,不推薦)

Win32平台

C: \ mysql\bin>MySQLd --standalone

或者C: \ mysql\bin>MySQLd-nt –standalone

如果你使用mysqld並且沒有把MySQL安裝在標准的位置,通常需要提供—basedir選項你的數據庫的安裝位置。

$safe_mysqld --basedir=”/path/to/MySQL” &(Unix平台)

c:\mysql\bin>mysqld --basedir=”x:/path/to/MySQL” (Win32平台)

5、使用safe_MySQLd腳本實現服務器的自動啟動

同樣你可以利用safe_mysqld和MySQLd實現服務器隨操作系統自動啟動。對於Linux系統以及BSD風格的系統(FreeBSD,OpenBSD等)),通常在/etc目錄下有幾個文件在引導時初始化服務,這些文件通常有以“rc”開頭的名字,且它有可能由一個名為“rc.local”的文件(或類似的東西),特意用於啟動本地安裝的服務。

在這樣的系統上,你可能將類似於下列的行加入rc.local文件中以啟動服務器(如果safe_MySQLd的目錄在你的系統上不同,修改它即可):

if [ -x /usr/local/bin/safe_mysqld ]; then /usr/local/bin/safe_MySQLd & fi

由於這樣在引導時啟動,將使用root身份啟動數據庫,在某些時候可能會產生問題和麻煩。這是你可以指定--user選項,因此可以將上面的代碼修改為:

if [ -x /usr/local/bin/safe_MySQLd ]; then

/usr/local/bin/safe_mysqld --user=MySQL --datadir=/path/to/data &

fi

使用腳本MySQL.server啟動關閉數據庫

對於Unix平台上的分發,比較好的辦法是使用數據庫腳本MySQL.server,啟動和關閉數據庫。

1、MySQL.server腳本的存放位置

mysql.server腳本安裝在MySQL安裝目錄下的share/mysqld目錄下或可以在MySQL源代碼分發的 support_files目錄下找到。對於rpm分發,該腳本已經改名mysql位於/etc/rc.d/init.d目錄中,另外在….中存在一個副本MySQL.server。下文的討論對RPM分發來說,都在安裝中完成了。如果你想使用它們,你需要將它們拷貝到適當的目錄下。

2、如何使用MySQL.server腳本啟動停止服務器

MySQL.server腳本可以被用來啟動或停止服務器,通過用start或stop參數調用它:

$ MySQL.server start

$ MySQL.server stop

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