MySQL 5.7 原始碼安裝、Yum倉庫安裝、RPM安裝、二進位制安裝

神諭丶發表於2016-04-12
實驗平臺:CentOS 6.5 
mysql版本:5.7.11 社群版

①原始碼安裝
安裝依賴
  1. yum install -y cmake gcc gcc-c++ bison automake ncurses-devel

與之前版本不同的是,5.7編譯原始碼安裝需要依賴boost 1.59
可以手動去http://www.boost.org/users/history/version_1_59_0.html下載
在linux中:
  1. wget http://jaist.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz

如果沒有boost,或者版本低於1.59,會在cmake時丟擲:
  1. -- Could not find (the correct version of) boost.
  2. -- MySQL currently requires boost_1_59_0

也可以選擇在cmake時自動下載安裝,只需要在cmake時額外指定:
  1. -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/include/boost

如果輸出如下,則表示開始自動下載boost包。
  1. -- MySQL 5.7.11
  2. -- Packaging as: mysql-5.7.11-Linux-x86_64
  3. -- Downloading boost_1_59_0.tar.gz to /usr/local/include/boost
  4. -- [download 0% complete]
  5. -- [download 1% complete]

再確認一下cmake版本,此處是
  1. # cmake --version
  2. cmake version 2.8.12.2


解壓後進入boost目錄安裝
  1. # cd boost_1_59_0/
  2. # ./bootstrap.sh
  3. # ./b2 install

然後準備安裝:

  1. # groupadd mysql
  2. # useradd -r -g mysql -s /bin/false mysql
  3. # tar zxvf mysql-5.7.11.tar.gz
  4. # cd mysql-5.7.11

準備cmake:
  1. # cmake . -DCMAKE_INSTALL_PREFIX=/data/mysql3306 \
  2. -DMYSQL_DATADIR=/data/mysql3306/data \
  3. -DMYSQL_UNIX_ADDR=/tmp/mysql3306.sock \
  4. -DWITH_INNOBASE_STORAGE_ENGINE=1 \
  5. -DMYSQL_TCP_PORT=3306 \
  6. -DWITH_INNOBASE_STORAGE_ENGINE=1 \
  7. -DDEFAULT_CHARSET=utf8 \
  8. -DDEFAULT_COLLATION=utf8_general_ci \
  9. -DWITH_EXTRA_CHARSETS:STRING=utf8 \
  10. -DMYSQL_USER=mysql \
  11. -DENABLED_LOCAL_INFILE=1 [ \
  12. -DDOWNLOAD_BOOST=1 \
  13. -DWITH_BOOST=/usr/local/include/boost ]
(更多cmake選項可參考 2 Installing and Upgrading MySQL - 2.9 Installing MySQL from Source)

注:若像本文之前安裝過boost,則可無需指定。
若指定[]中的內容,則為自動下載boost方式安裝boost。



然後make && make install ,機子稍微差一點的可能要30分鐘以上。
  1. # make
  2. # make install

配置一下許可權和配置檔案
  1. # cd /data/mysql3306/
  2. # chown -R mysql .
  3. # chgrp -R mysql .
  4. # chmod o+x /data
  5. # cp support-files/my-default.cnf /etc/my.cnf

修改配置檔案:
vi /etc/my.cnf
在[mysqld]增加
  1. datadir = /data/mysql3306/data
  2. basedir = /data/mysql3306/
儲存退出

初始化:
  1. # bin/mysqld --initialize --user=mysql --datadir=/data/mysql3306/data --basedir=/data/mysql3306/
若是5.7.6之前的版本,需要用mysql_install_db來初始化



啟動服務:
  1. # bin/mysqld_safe --user=mysql &

初始化後的隨機密碼在errlog中,形如:
[Note] A temporary password is generated for root@localhost: NP#<ey1r:gow< ey1r:gow</ey1r:gow<>

進入mysql

  1. # bin/mysql -uroot -p'NP#<ey1r:gow'

【額外】官方建議執行mysql_ssl_rsa_setup來增加安全性,執行後會在datadir下生成相關檔案。
  1. # bin/mysql_ssl_rsa_setup

         




其他三種方式類似於5.7之前的版本,簡單描述:


②Yum Repository 方式
http://dev.mysql.com/downloads/repo/yum/
此處我用的檔案是 mysql57-community-release-el6-7.noarch.rpm
先匯入到本地
yum localinstall mysql57-community-release-el6-7.noarch.rpm
然後直接安裝即可
yum install mysql-server
此時同時會安裝mysql-client(預設依賴包)
此種方式安裝會保證是最新版本,比如官方釋出了5.7.12,通過此方式安裝也會是5.7.12。




③RPM 方式(DEB方式與RPM類似)
http://dev.mysql.com/downloads/mysql/
選擇 Red Hat Enterprise Linux / Oracle Linux
選擇對應的版本和系統架構,然後下載,比如下載RPM Bundle:
mysql-5.7.11-1.el6.x86_64.rpm-bundle.tar
需要先解除安裝5.1.x的一些libs
yum remove -y mysql-libs-*

有時可能需要先安裝依賴,如
yum install -y perl libaio* perl-devel libaio-devel perl-Time-HiRes perl-DBD-MySQL  

解開tar包
tar xvf mysql-5.7.11-1.el6.x86_64.rpm-bundle.tar

然後
rpm -ivh *.rpm 即可,過程見下:

  1. Preparing... ########################################### [100%]
  2. 1:mysql-community-common ########################################### [ 11%]
  3. 2:mysql-community-libs ########################################### [ 22%]
  4. 3:mysql-community-client ########################################### [ 33%]
  5. 4:mysql-community-server ########################################### [ 44%]
  6. 5:mysql-community-devel ########################################### [ 56%]
  7. 6:mysql-community-embedde########################################### [ 67%]
  8. 7:mysql-community-embedde########################################### [ 78%]
  9. 8:mysql-community-test ########################################### [ 89%]
  10. 9:mysql-community-libs-co########################################### [100%]



④二進位制方式(通用linux)
http://dev.mysql.com/downloads/mysql/
選擇 Linux - Generic
下載對應版本,開啟包或解壓,初始化,修改配置檔案,啟動服務即可



參考文件:
MySQL 5.7 Reference Manual / Installing and Upgrading MySQL / Installing MySQL from Source / Installing MySQL Using a Standard Source Distribution

作者微信公眾號(持續更新)


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29773961/viewspace-2079675/,如需轉載,請註明出處,否則將追究法律責任。

相關文章