mysql 的原始碼安裝方法及自動啟動方法

goldtime發表於2007-07-02

先下載Mysql的原始碼版,地址: http://dev.mysql.com/downloads/mysql/

shell> groupadd mysql
shell> useradd -g mysql mysql
shell> tar -zxvf mysql-VERSION.tar.gz 
shell> cd mysql-VERSION
shell> ./configure --prefix=/usr/local/mysql
shell> make
shell> make install
shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> cd /usr/local/mysql
shell> bin/mysql_install_db --user=mysql
shell> chown -R root  .
shell> chown -R mysql var
shell> chgrp -R mysql .
shell> bin/mysqld_safe --user=mysql &

如果從一個原始碼RPM開始,那麼執行如下命令:

shell> rpmbuild --rebuild --clean MySQL-VERSION.src.rpm

這樣你製作一個可以安裝的二進位制RPM。對於舊版本的RPM,你可能需要替換用rpm替換命令rpmbuild

註釋:該過程不為任何MySQL賬戶設定密碼。

[@more@]

以下是安裝MySQL原始碼分發版的更詳細的描述:

1. mysqld增加一個登入使用者和組:

2.            shell> groupadd mysql
3.            shell> useradd -g mysql mysql

這些命令將增加MySQL組和 MySQL使用者。不同版本的Unix中,useradd groupadd的語法可能會稍有不同。還可以稱為adduseraddgroup

你可能會將這些使用者和組命名為mysql之外的名稱。如果是這樣,在下面的步驟中替換為相應的名稱。

4. 挑選一個你想解開分發包的目錄,進入該目錄。

5. 2.1.3節,“怎樣獲得MySQL”中列出的站點之一獲得一個分發檔案。

6. 在當前目錄下解包分發版:

7.            shell> gunzip < /path/to/mysql-VERSION.tar.gz | tar xvf -

該命令建立mysql-VERSION 目錄。

使用GNU tar,則不再需要gunzip。你可以用下面的命令來解包和提取分發:

shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz

8. 進入解包分發版的頂級目錄:

9.            shell> cd  mysql-VERSION

請注意目前必須從頂級目錄配置和構建MySQL。你不能在其它目錄中構建。

10.配置釋出版並且編譯:

11.        shell> ./configure --prefix=/usr/local/mysql
12.        shell> make

當你執行configure時,你可能想要指定一些選項,執行./configure --help得到一個選項列表。2.8.2節,“典型配置選項”討論一些很有用的選項。

如果configure失敗,你將向MySQL郵件目錄傳送包含你認為能幫你解決該問題的包含“config.log”中所有行的郵件,也要包括configure的最後幾行輸出。用mysqlbug指令碼郵寄錯誤報告。請參見1.7.1.3節,“如何通報缺陷和問題”

如果編譯失敗,參見2.8.4節,“處理MySQL編譯問題”尋求幫助。

13.安裝分發版:

14.        shell> make install

如果你想要設定一個選項檔案,使用support-files目錄中的一個作為模板。例如:

shell> cp support-files/my-medium.cnf /etc/my.cnf

可能你需要用root使用者執行這些命令。

如果想要配置為支援InnoDB表,應當編輯/etc/my.cnf檔案,去掉innodb_...開始選項行前面的#符,並將選項值改為你想要的。請參見4.3.2節,“使用選項檔案”15.2.3節,“InnoDB配置”

15.進入安裝目錄:

16.        shell> cd /usr/local/mysql

17.如果還沒有安裝的MySQL,必須建立MySQL授權表:

18.        shell> bin/mysql_install_db --user=mysql

如果用root執行命令,應當使用--user選項。選項的值應與你在第一步為執行伺服器所建立的登入賬戶相同。如果用該使用者登入來執行命令,可以省略--user選項。

mysql_install_db建立MySQL授權表後,需要手動重新啟動伺服器

19.將程式二進位制的所有權改為root資料目錄的所有權改為你執行mysqld的使用者。如果位於安裝目錄(/usr/local/mysql)下,命令應為:

20.        shell> chown -R root  .
21.        shell> chown -R mysql var
22.        shell> chgrp -R mysql .

第一個命令將檔案的所有屬性改為root使用者。第二個命令將資料目錄的所有屬性改為mysql使用者。第三個命令將組屬性改為mysql組。

23.如果你喜歡在引導機器時自動啟動MySQL,你可以複製support-files/mysql.server檔案到你係統有啟動檔案的地方。更多的資訊可以在support-files/mysql.server指令碼中和2.9.2.2節,“自動啟動和停止MySQL”中找到。

24.如果安裝了DBIDBD::mysql Perl模組,可以使用bin/mysql_setpermission指令碼增加新賬戶。關於說明,參見2.13節,“Perl安裝注意事項”

在所有東西被安裝以後,你應當使用該命令初始化並且測試你的分發版:

shell> /usr/local/mysql/bin/mysqld_safe --user=mysql &

如果這個命令提示mysqld daemon ended並馬上失敗,那麼你能在資料目錄中的檔案“hostname'.err”找到一些資訊。

關於mysqld_safe的詳細資訊參見5.1.3節,“mysqld_safe:MySQL伺服器啟動指令碼”

註釋:MySQL授權表中的賬戶開始沒有密碼。啟動伺服器後,你應當使用2.9節,“安裝後的設定和測試”中的說明來設定密碼。

安裝完成後,能夠透過 /usr/local/mysql/bin/mysql 來連線mysql進行管理,如果你裝了apache並且能夠解析php的話,也能使用phpMyadmin來管

理你的mysql,記得裝完後使用mysql或者mysqladmin來修改root的密碼,這裡我們就不說了,請參考相關的文章.

控制mysql就透過 /usr/local/mysql/libexec/mysqld 來控制啟動或者停止mysql:

# /usr/local/mysql/libexec/mysqld start #啟動mysql
# /usr/local/mysql/libexec/mysqld stop #停止mysql
# /usr/local/mysql/libexec/mysqld restart #重啟mysql

對於FreeBSD使用者,為了每次系統重啟後都能執行mysql,可以寫一個指令碼放到 /usr/local/etc/rc.d目錄下,用來執行mysql,我們寫一個指令碼mysql_start.sh

#! /bin/sh
/usr/local/mysql/bin/mysqld_safe&

然後儲存到/usr/local/etc/rc.d目錄下,那麼以後reboot系統後都能啟動mysql了.

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/778728/viewspace-923108/,如需轉載,請註明出處,否則將追究法律責任。

相關文章