標籤:mysql5.7.11 源碼編譯安裝 (red hat linux 6.5 )
mysql5.7.11 源碼編譯安裝 (Red hat linux 6.5 )
一、準備工作
1.1 卸載系統內建mysql
查看系統是否內建mysql, 如果有就卸載了, 卸載方式有兩種yum, rpm, 這裡通過yum卸載
rpm -qa | grep mysql //查看系統內建mysql
yum -y remove mysql-* //卸載mysql
rpm -e –nodeps mysql-5.1.73-3.el6_5.x86_64 //卸載mysql
1.2 卸載系統內建boost,並安裝boost_1_59_0
mysql 5.7 依賴於boost_1_59_0或更高版本, 查看系統是否內建boost, 如果有就卸載了
rpm -qa | grep boost //查看系統內建boost
yum -y remove boost-* //卸載boost
rpm -e –nodeps boost-filesystem-1.41.0-11.el6_1.2.x86_64 //卸載boost
安裝 boost_1_59_0 , cmake 編譯時間加上 -DWITH_BOOST=/usr/local/boost
tar -zxvf boost_1_59_0.tar.gz
mv boost_1_59_0 /usr/local/boost
1.3 安裝依賴包
yum install gcc gcc-c++ ncurses ncurses-devel bison libgcrypt perl
1.4 安裝cmake
tar -zxvf cmake-3.4.1.tar.gz
./configure
make && make install
1.5 下載 mysql 源碼包 mysql-5.7.11.tar.gz
通過wget下載
wget http://cdn.mysql.com/Downloads/MySQL-5.7.11/mysql-5.7.11.tar.gz
windows中下載需要的源碼包,通過檔案傳輸工具rzsz上傳
yum install lrzsz //安裝rzsz
rz //上傳
1.6 建立使用者組mysql和使用者mysql
檢查系統是否已經有mysql使用者,如果沒有則建立
cat /etc/group | grep mysql //查看是否存在mysql使用者組
cat /etc/passwd | grep mysql //查看是否存在mysql使用者
groupadd mysql //建立使用者組
useradd -r -g mysql mysql //建立使用者
1.7 建立mysql目錄和資料庫目錄,並賦予使用者mysql許可權
建立mysql目錄和資料庫目錄
mkdir /usr/local/mysql //建立mysql目錄
mkdir /usr/local/mysql/data //建立資料庫目錄
chown -R mysql:mysql /usr/local/mysql //賦予許可權
二、編譯、安裝、配置mysql
2.1 編譯、安裝mysql
編譯時間帶上一些參數如安裝根目錄、資料庫目錄、編碼、連接埠號碼、預設儲存引擎等
編譯的時候記得帶上 -DWITH_BOOST=/usr/local/boost
tar -zxvf mysql-5.7.11.tar.gz
cd mysql-5.7.11
cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -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 -DENABLE_DOWNLOADS=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost
make && make install
配置選項參考地址, [http://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html][1]
2.2 編譯出錯, 重新編譯前要刪除編譯失敗的檔案
重新編譯時間,需要清除舊的對象檔案和緩衝資訊
make clean
rm -f CMakeCache.txt
2.3 配置my.cnf
my.cnf檔案可以根據自己的需求選擇合適的配置, 網上有很多, 可以參考, 這裡不在詳細說明。記得把 my.cnf 放到 /etc 目錄下
mv my.cnf /etc/my.cnf
2.4 初始化系統資料表
自 mysql5.7 開始,初始化系統資料表不再使用 mysql_install_db 工具, 而是使用 mysqld –initialize-insecure –user=mysql , 其中 –initialize 表示預設產生一個安全的密碼, –initialize-insecure 表示不產生密碼, 密碼為空白
cd /usr/local/mysql
bin/mysqld –initialize-insecure –user=mysql –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data
2.5 添加環境變數, 註冊成系統服務
添加環境變數, 在 PATH 中添加參數 :/usr/local/mysql/bin:/usr/local/mysql/lib
vim /root/.bash_profile
PATH=PATH:HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
source /root/.bash_profile
註冊成系統服務
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig mysqld on
service mysqld start/stop/restart/status
首次登陸設定密碼
mysqladmin -uroot -p password 123456 //登入時候
SET PASSWORD FOR ‘root’@’localhost’ = PASSWORD(‘123456’); //登入之後
查看進程
netstat -lntp | grep 3306
pkill mysqld
本文出自 “為夢想奮鬥” 部落格,轉載請與作者聯絡!
mysql5.7.11 源碼編譯安裝 (Red hat linux 6.5 )