標籤:安裝 配置 mysql 編譯 源碼
Mysql有通用二進位包安裝,源碼包編譯安裝或者利用YUM等包管理工具進行安裝等方法。在這裡,我們將使用源碼包編譯安裝。
一。安裝環境
Centos6.5 核心 2.6.32-431.el6.i686
mysql-5.6.20
二。安裝前準備
編譯安裝前需要準備好編譯環境,使用源碼安裝需要CMAKE(http://www.cmake.org)
,make,c++編譯器。
yum install -y cmake make gcc
然後是擷取mysql的源碼包
http://dev.mysql.com/downloads/mysql/
我們選擇GA(通用)版本的MYSQL源碼包
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.20.tar.gz
三。安裝及其配置
#建立mysql使用者和使用者組以及安裝過程中所使用的檔案路徑
groupadd mysql
useradd -g mysql mysql
mkdir -p /usr/local/mysql
mkdir -p /home/mysql/{data,logs,temp}
#修改環境變數
vim /etc/profile
#在最後加入下列兩行:
PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
export PATH
#使設定檔立即生效
source /etc/profile
#解壓安裝包
tar -xzf mysql-5.6.20.tar.gz
#進入mysql目錄
cd mysql-5.6.20
#使用CMAKE安裝MYSQL
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=/home/mysql/data -DMYSQL_USER=mysql -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1
#編譯選項詳細資料
http://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html#option_cmake_cmake_install_prefix
根據編譯結果查看是否有錯誤,我在編譯的過程中發現少了ncurses-devel,用yum安裝即可,然後rm CMakeCache.txt後繼續編譯,直到沒有錯誤為止。
編譯結束後 用命令
echo $?
查看結果應該為0
#編譯安裝
make && make install
編譯過程有點長。
如果需要重裝mysql,在/usr/local/src/mysql-5.6.20在執行下make install就可以了
#清除安裝臨時檔案
make clean
#設定許可權
chown -R mysql:mysql /usr/local/mysqlchown -R mysql:mysql /home/mysql
#初始化資料庫
/usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/home/mysql/data --basedir=/usr/local/mysql --collation-server=utf8_general_ci
其中collation-server選項是用來設定資料庫預設排序方式的。
初始化指令碼在/usr/local/mysql/下產生了設定檔my.cnf,需要更改該設定檔的所有者:
chown mysql:mysql /usr/local/mysql/my.cnf
需要注意的是如果原先系統就要該檔案,需要將其改名或刪除,否則會干擾MySQL的使用。
#修改設定檔
mv /usr/local/mysql/my.cnf /usr/local/mysql/my.cnf.bakvim /etc/my.cnf
我們將原先的/usr/local/mysql/my.cnf下的設定檔名進行修改或者刪除,然後再/etc目錄下建立新的設定檔更有利於管理
[mysqld]
datadir=/home/mysql/data
socket=/usr/local/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
log-error= /home/mysql/logs/mysql_error.log
[mysqld_safe]
log-error=/home/mysql/logs/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[client]
socket =/usr/local/mysql/mysql.sock
port =3306
我在進行此步驟中出現了一些錯誤,調試花了很多時間。最後發現socket檔案路徑設定需要格外注意,否則會出現mysql無法啟動等問題。
如果啟動Mysql過程中出錯,可自行到/home/mysql/logs/mysql_error.log中進行查看,當然你也可以自行設定錯誤記錄檔的存放位置。
#複製服務啟動指令碼
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
#mysql安全設定(設定密碼,清除匿名使用者等)
/usr/local/mysql/bin/mysql_secure_installation
#啟動MySQL服務
service mysql start
#設定開機自動啟動服務
chkconfig --add mysqlchkconfig mysql on
至此,你就可以享受最新版的Mysql了!
本文出自 “加速@世界” 部落格,請務必保留此出處http://jasonlee888.blog.51cto.com/6432756/1557128
(一)MySQL-5.6.20的編譯安裝