環境
系統版本:cenos 6.2
MySQL版本:mysql-5.5.11
一、準備環境
1.建立mysql安裝目錄及資料存放目錄
# mkdir -p /usr/local/mysql //安裝mysql
# mkdir -p /usr/local/mysql/data //存放資料庫
2.建立myql使用者和使用者組
# groupadd mysql
# useradd -g mysql mysql
3.賦予資料存放目錄許可權
[# chown -R root:mysql . //把目前的目錄中所有檔案的所有者設為root,所屬組為mysql]
# chown mysql:mysql -r /usr/local/mysql/data
4.安裝cmake[mysql5.5以後是通過cmake來編譯的]
可以在http://www.cmake.org網站下載cmake-2.8.4.tar.gz,上傳並移動至/usr/local目錄下
# tar zxvf cmake-2.8.4.tar.gz
# cd cmake-2.8.4
# ./configure [#gmake]
# make
# make instll
二、安裝mysql
1.在mysql的網站下載mysql最新版本.地址是:http://dev.mysql.com/downloads/mysql/
上傳並移動至/usr/local/mysql目錄下
2.解壓mysql-5.5.11
#tar zxvf mysql-5.5.11.tar.gz
# cd mysql-5.5.11
# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-DMYSQL_DATADIR=/usr/local/mysql/data-DDEFAULT_CHARSET=utf8-DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -
DENABLED_LOCAL_INFILE=1
# make
# make instll
參數說明:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安裝目錄
-DINSTALL_DATADIR=/usr/local/mysql/data //資料庫存放目錄
-DDEFAULT_CHARSET=utf8 //使用utf8字元
-DDEFAULT_COLLATION=utf8_general_ci //校正字元
-DEXTRA_CHARSETS=all //安裝所有擴充字元集
-DENABLED_LOCAL_INFILE=1 //允許從本地匯入資料
注意事項:
重新編譯時間,需要清除舊的對象檔案和緩衝資訊。
# make clean
# rm -f CMakeCache.txt
# rm -rf /etc/my.cnf
4.把mysql的啟動服務設定為系統服務
# cp support-files/my-medium.cnf /etc/my.cnf
5.初始化資料庫
#cd /user/local/mysql
# scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data
註:basedir:mysql安裝路徑 datadir:資料庫檔案儲存路徑
6.設定開機自啟動
# cp support-files/mysql.server /etc/init.d/mysql
# chmod 755 /etc/init.d/mysql
# chkconfig mysql on
7.配置環境變數
將mysql的bin目錄加到PATH中,有利於以後管理與維護,在/etc/profile中加入mysql/bin,同時增加兩個別名方便操作:
# export PATH=/usr/local/mysql/bin:$PATH
# alias mysql_start="mysqld_safe&"
# alias mysql_stop="mysqladmin -u root -p shutdown"
8.啟動mysql服務
# /etc/init.d/mysql start
啟動之後用ps -ef|grep mysql命令查看是否啟動
9.登入mysql
# mysql -u root -p
三。安裝遇到的問題
1.
解決方案:yum install gcc
2.
解決方案:yum install gcc-c++
3.
解決方案:
yum install ncurse
4.bash:mysql:command not find
原因是mysql命令的路徑在/usr/local/mysql/bin下面,所以你直接使用mysql命令時,系統在/usr/bin下面查此命令,所以找不到了。
解決方案:做個軟連結即可。
# ln -s /usr/local/mysql/bin/mysql /usr/bin
5.如果myql不能遠端連線,出現錯誤mysql error number 1130,則加入下面語句試試:
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '******' WITH GRANT OPTION;
[註:中間出了點小問題,待後續有時間再弄]