伺服器環境為了安全和穩定期間,我一般使用stable版本debian。但是stable版本debian的MYSQL版本略有些古舊,4.X的版本缺少了很多便利的特性。雖然可以選擇unstable版本debian或者只用apt升級MYSQL,不過總感覺不那麼妥當。所以手工安裝最新版本的MYSQL是一個比較好的選擇。
從 http://dev.mysql.com/downloads/mysql/5.0.html 這裡下載最新的穩定版本MYSQL。其中有多個版本,包括了源碼版本,但是引用MYSQL網站上的說法:
“For maximum stability and performance, we recommend that you use the binaries we provide.”
而且鑒於編譯MYSQL 5.0的時間足夠打一場局部戰爭,我選擇了二進位包方式。
因為我在debian下安裝,不用考慮RPM啦。Linux(x86) Max是比較不錯的選擇。
su
#切到root
tar -zxvf mysql-max-5.0.19-linux-i686-glibc23.tar.gz
#二進位包釋放出來後不用編譯,網上很多安裝5.0的步驟裡面都有編譯的,那個比較適合源碼包。
groupadd mysql
#添加使用者組
useradd -g mysql mysql
#添加使用者
mv mysql-max-5.0.19-linux-i686-glibc23 /usr/local
#移動MYSQL目錄到 /usr/local/ 下
ln -s mysql-max-5.0.19-linux-i686-glibc23 mysql
#建立硬串連,許多地方使用MYSQL是訪問 /usr/local/mysql/ 這個地方。
cd mysql
#.....
./configure --prefix=/usr/local/mysql --with-charser=gbk --localstatedir=/var/db/mysql
#網上也有一些文章提到前面說的二進位包不需要編譯的問題,但是卻漏掉了這個步驟。造成執行下面的指令碼會報錯。
./scripts/mysql_install_db --user=mysql
#初始化資料庫
chown -R root .
chown -R mysql data
chgrp -R mysql .
#修改使用者與組許可權
cd support-files
ln -s /usr/local/mysql/support-files/my-smal.cnf /etc/my.cnf
#建立my.cnf的硬串連
ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
#讓MYSQL能夠開機啟動,這裡要注意Debian跟其他LINUX不同的是 /etc/init.d/ 和 /etc/rc.d/init.d/ 的區別。
/etc/init.d/mysqld start
#啟動MYSQL
ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
ln -s /usr/local/mysql/include/mysql /usr/include/mysql
#為了在以後安裝需要MYSQL的程式的時候不指定MYSQL的路徑,如果你像我一樣懶,這步還是別省略了吧。