MySQL正式發布5.5.9版本,win下有了msi安裝包,Ubuntu還在採用保守的5.1版本,官方網站上有rpm和tar.gz的源碼版本,至今還沒有ubuntu的安裝源,本人對rpm不太感冒,所以只能編譯源碼安裝了,參照網上的編譯安裝選項,實驗了幾次,終於成功,做個筆記。
5.5.9編譯採用cmake,Ubuntu下只要sudo apt-get install cmake就可以,mysql具體編譯選項如下(#後面的複製進去即可):
root@ubuntu:~/downloads/mysql-5.5.9# cmake . -DCMAKE_BUILD_TYPE:STRING=Release -
DCMAKE_INSTALL_PREFIX:PATH=/usr/local/mysql -DCOMMUNITY_BUILD:BOOL=ON
-DENABLED_PROFILING:BOOL=ON -DENABLE_DEBUG_SYNC:BOOL=OFF -
DINSTALL_LAYOUT:STRING=STANDALONE -DMYSQL_DATADIR:PATH=/var/run/mysql
-DMYSQL_MAINTAINER_MODE:BOOL=OFF -DWITH_EMBEDDED_SERVER:BOOL=ON -
DWITH_EXTRA_CHARSETS:STRING=all -DWITH_SSL:STRING=bundled -
DWITH_UNIT_TESTS:BOOL=OFF -DWITH_ZLIB:STRING=bundled -LH
然後就是按照源碼包下INSTALL_SOURCE.txt的說明
cd /usr/local/mysql
(進入主程式目錄)
sudo cp support-files/my-medium.cnf /etc/my.cnf
(複製源碼包內的設定檔案到/etc/系統統一的設定檔案路徑,www.bkjia.com這一步一定要做,不然install_db會出錯)
sudo ln -s /usr/local/mysql/bin/mysql /usr/bin/
sudo ln -s /usr/local/mysql/bin/mysqladmin /usr/bin/
sudo ln -s /usr/local/mysql/bin/mysqld_safe /usr/bin/
sudo ln -s /usr/local/mysql/bin/mysql_conf /usr/bin/
sudo ln -s /usr/local/mysql/share/mysql/mysql.server /usr/bin/
(添加執行程式的軟連結,這隻是為了方便,喜歡用完整路徑的可以不做,這一步也可以不用)
sudo groupadd mysql
(建立使用者組mysql)
sudo useradd -g mysql mysql
(在使用者組mysql下建立使用者mysql)
sudo bin/mysql_install_db --user=mysql
(如果還沒有安裝的MySQL,必須建立MySQL授權表。建立後,需要手動重新啟動伺服器)
sudo chown -R root .
(使/usr/local/mysql/目錄下所有檔案為根使用者root所有)
sudo chown -R mysql var
(使/usr/local/mysql/var/目錄下所有檔案為使用者mysql所有)
sudo chgrp -R mysql .
(使/usr/local/mysql/目錄下所有檔案為使用者組mysql所有,我覺得用root也可以)
sudo bin/mysql_safe --use=mysql &
(初始化並測試你的mysql,其中&為後台執行的意思)
至此安裝完畢,server啟動正常。如果沒有上面的添加執行程式的軟連結,/usr/local/mysql不在PATH路徑下,每次都要/usr/local/mysql/bin/mysqld啟動,可以將/usr/local/mysql/bin路徑添加到PATH,Ubuntu下修改/etc/environment檔案,注意書寫方式,如果錯誤ubuntu下次很可能起不來。
二、啟動Mysql Server
mysql_config
或
mysqld_safe --user=mysql &
或
mysql.server start
設定自啟動
1、sudo cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysql
2、sudo chmod +x mysql
3、sudo sysv-rc-conf
(運行服務管理工具,沒有sysv-rc-conf的可以馬上安裝一個,sudo apt-get install sysv-rc-conf,關於sysc-rc-conf的使用可以參考<Ubuntu10.10下使用sysv-rc-conf管理服務>)
4、運行sysv-rc-conf後找到mysql,並為它設定一個運行層級,本人設了2345。
添加Mysql使用者密碼
1、確保Mysql Server已啟動
2、mysql -u root -p
3、SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpwd');
4、SET PASSWORD FOR 'root'@'hostname' = PASSWORD('newpwd');
(hostname是你的主機名稱,按實際情況而定)