使用Linux+Vim寫PHP簡直是一種享受。下面是我的Vim配置和安裝的外掛程式。
1. 下載MySQL 5.5.28源碼包
下載地址:http://www.mysql.com/downloads/mysql/#downloads
在MySQL下載頁面的下拉框選擇“Source Code”,然後選擇最下面的tar.gz格式,開始下載。wget開始可以使用:http://cdn.mysql.com/Downloads/MySQL-5.5/mysql-5.5.28.tar.gz這個地址。
2. 添加MySQL使用者和組
| 代碼如下 |
複製代碼 |
sudo groupadd mysql sudo useradd -r -g mysql mysql |
3. 安裝一些需要的軟體
| 代碼如下 |
複製代碼 |
sudo apt-get install cmake automake autoconf libtool gcc g++ bison |
如果只安裝上面的擴充,編譯過程總會出現這樣的錯誤:-- Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH) CMake Error at cmake/readline.cmake:83 (MESSAGE): Curses library not found. Please install appropriate package, remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.,則需要多安裝libncurses5-dev包。
sudo apt-get install libncurses5-dev
提示,為了保證速度,請更新Ubuntu源為最快的源:Ubuntu更新源推薦。
4. CMake編譯MySQL
| 代碼如下 |
複製代碼 |
#建立目錄 sudo mkdir /data/mysql/ #開始編譯(注意下面的命令是一句,實際情況是沒有換行的,這裡為了方便添加註釋) sudo cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql #安裝路徑 -DMYSQL_DATADIR=/data/mysql/ #資料檔案存放位置 -DSYSCONFDIR=/etc #my.cnf路徑 -DWITH_MYISAM_STORAGE_ENGINE=1 #支援MyIASM引擎 -DWITH_INNOBASE_STORAGE_ENGINE=1 #支援InnoDB引擎 -DWITH_MEMORY_STORAGE_ENGINE=1 #支援InnoDB引擎 -DWITH_READLINE=1 #快速鍵功能(我沒用過) -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock #串連資料庫socket路徑 -DMYSQL_TCP_PORT=3306 #連接埠 -DENABLED_LOCAL_INFILE=1 #允許從本地匯入資料 -DWITH_PARTITION_STORAGE_ENGINE=1 #安裝支援資料庫分區 -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk #安裝需要的字元集 -DDEFAULT_CHARSET=utf8 #預設字元 -DDEFAULT_COLLATION=utf8_general_ci #預設字元集 #make安裝 sudo make && make install |
5. 配置MySQL
這一步中需要注意的是my.cnf的載入順序,Linux優先順序從高到低/etc/my.cnf->/etc/mysql/my.cnf->SYSCONFDIR/my.cnf->$MYSQL_HOME/my.cnf,高優先順序的my.cnf設定會覆蓋低優先順序的my.cnf,所以一般把config檔案copy到etc中即可。
| 代碼如下 |
複製代碼 |
#如果/etc下沒有my.cnf sudo cp support-files/my-medium.cnf /etc/my.cnf #設定許可權 sudo chmod +x /usr/local/mysql sudo chown -R mysql.mysql /usr/local/mysql #配置開機自啟動 sudo cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql sudo chmod +x /etc/init.d/mysql sudo chkconfig –list sudo update-rc.d mysql defaults `/sbin/chkconfig –add mysql; /sbin/chkconfig mysql on` sudo chkconfig –list mysql #修改my.cnf配置 vim /etc/my.cnf #[mysqld] 添加: datadir=/data/mysql default-storage-engine=MyISAM #以下可選: log-error = /data/mysql/error.log pid-file = /home/mysql/mysql.pid user = mysql tmpdir = /tmp #安裝預設資料表 /usr/local/mysql/scripts/mysql_install_db –basedir=/usr/local/mysql –datadir=/da/mysql –user=mysql #啟動MySQL /usr/local/mysql/bin/mysqld_safe –defaults-file=/etc/my.cnf & #或者 /etc/init.d/mysql start (service mysql start) #測試MySQL是否啟動 # 1)查看是否有進程mysql ps -ef | grep mysql # 2)查看連接埠是否運行 netstat -tnl | grep 3306 # 3)讀取mysql版本資訊 mysqladmin version ##安裝成功,Thanks God! |
到此MySQL編譯完成,如果這個時候MySQL無法啟動,那麼多問題基本上都處在my.cnf的位置和設定上。最後進入MySQL修改root使用者的密碼,當前密碼為空白:
| 代碼如下 |
複製代碼 |
UPDATE user SET password=PASSWORD("new password") WHERE user='root'; FLUSH PRIVILEGES; |