萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> ubuntu12.04 /centos 環境下源碼編譯安裝mysql 5.7.14過程詳解

ubuntu12.04 /centos 環境下源碼編譯安裝mysql 5.7.14過程詳解

下面我們來看一篇關於ubuntu12.04 /centos 環境下源碼編譯安裝mysql 5.7.14過程詳解,希望能夠讓各位知道如何在linux中安裝mysql5.7數據庫吧。

1,安裝前期工作。創建mysql用戶以及數據存放目錄

groupadd mysql
useradd -r -g mysql -s /bin/false mysql
mkdir -p  /data/mysql/
chown  -R mysql.mysql  /data/mysql/
安裝依賴包:

apt-get install build-essential libncurses5-dev cmake openssl*  -y
2,前期工作做完,,准備下載源碼包編譯安裝和初始化。
到mysql官網http://dev.mysql.com/downloads/mysql/5.7.html下載通用源碼安裝包mysql 5.7.14,這裡我們直接下載帶有boost庫的安裝包,避免單獨去下載boost耽誤時間,之前沒有從這裡下載對應boost安裝包,踩了一個巨大的坑。哎,血的教訓!
2
下載完以後到服務器進行解壓編譯安裝,命令如下:

cd /usr/local/src
tar  zxvf  mysql-boost-5.7.14.tar.gz
cd mysql-5.7.14/
編譯參數如下

/usr/bin/cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql57 \
-DMYSQL_DATADIR=/data/mysql57 \
-DSYSCONFDIR=/etc \
-DMYSQL_TCP_PORT=3307 \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/data/mysql57/mysql.sock \
-DMYSQL_TCP_PORT=3307 -DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_SSL=system \
-DWITH_DEBUG=0 -DWITH_READLINE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DDOWNLOAD_BOOST=1 \
-DWITH_BOOST=./boost \
執行完以後 make && make install

注意這裡配置完以後會有root密碼顯示,記錄以後方便進去做更改密碼操作等。
安裝完成,設置環境變量,編輯/etc/profile

export PATH=/usr/local/mysql/bin:$PATH
設置以後需要source /etc/profile

數據庫初始化:
將提前設置好的my.cnf放到/etc/my.cnf ,後續需要加載這個配置文件,最好提前優化好。

cd /usr/local/mysql
mysqld --initialize --user=mysql
mysql_ssl_rsa_setup
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
mysqld_safe --skip-grant-tables &
後台運行以後單獨開一個窗口登錄mysql並初始化mysql的root密碼:

mysql -u root -p
SET PASSWORD = PASSWORD('123456');
所有操作步驟完成。測試是否都成功可以如下操作:

 /etc/init.d/mysqld restart
mysql -u root -p12345
如果登錄沒問題則一切正常。

注:
1,如果root密碼忘記,那麼可以通過執行:

 mysqld_safe --skip-grant-tables &
這樣再登錄就可以空密碼登錄了。執行

update mysql.user set authentication_string=password('123456') where user='root' and Host = 'localhost';
可以修改root的密碼。修改以後/etc/init.d/mysqld restart
注:如果登陸進去以後提示需要修改root密碼,可以執行:

SET PASSWORD = PASSWORD('123456');
2, 如果能apt-get就apt-get,需要注意備份/etc/mysql/my.cnf 不然以後重裝會覆蓋。

copyright © 萬盛學電腦網 all rights reserved