本文主要向大家介紹了CentOS7 下源碼安裝MySQL數據庫 8.0.11,通過具體的內容向大家展現,希望對大家學習MySQL數據庫有所幫助。
CentOS7?下源碼安裝MySQL?8.0.11
系統環境:CentOS7,?內核:Linux?3.10.0-862.el7.x86_64
如果有舊版本的MySQL,先卸載,用下面命令來查詢出系統有哪些相關的MySQL包。
rpm?-qa?|?grep?mysql
如果上述命令查詢出有相關的MySQL包,就卸載
rpm?-e?包名
卸載MariaDB包
yum?remove?mariadb-libs.x86_64
從MySQL官網下載源碼包,并將該文件拷貝到系統中。
https://dev.mysql.com/downloads/mysql/
注意:下載帶boost的包:mysql-boost-8.0.11.tar.gz,?大小:74.1M
技術分享圖片
安裝編譯必要的包
yum?-y?install?make?gcc-c++?cmake?bison-devel?ncurses-devel
創建MySQL用戶和組,該用戶只用作MySQL的服務,不能用于登錄系統
useradd?-g?mysql?mysql?-M?-s?/sbin/nologin
檢驗源壓縮包的完整性,并解?壓源碼包,解壓到/usr/local/mysql-8.0.11
md5sum?mysql-boost-8.0.11.tar.gz
tar?-zxvf?mysql-boost-8.0.11.tar.gz?-C?/usr/local
執行cmake
cmake?\
-DDOWNLOAD_BOOST=1?\
-DWITH_BOOST=/usr/local/mysql-8.0.11/boost/boost_1_66_0/boost?\
-DWITH_DEBUG=1?\
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql?\
-DMYSQL_DATADIR=/usr/local/mysql/data?\
-DWITH_BOOST=/usr/local/boost?\
-DSYSCONFDIR=/etc?\
-DEFAULT_CHARSET=utf8mb4?\
-DDEFAULT_COLLATION=utf8mb4_general_ci?\
-DENABLED_LOCAL_INFILE=1?\
-DEXTRA_CHARSETS=all
在執行cmake的過程中有一個報錯,如下圖:?意思是缺少相關的openssl開發包。
技術分享圖片
安裝缺省的依賴包
yum?install?openssl-devel.x86_64?openssl-static.x86_64?openssl-perl.x86_64
刪除CMakeCache.txt或者重命名,這里重命名該文件。
mv?CMakeCache.txt?CMakeCache.txt.bk
再次執行cmake操作,并最終沒有報錯。
cmake?\
-DDOWNLOAD_BOOST=1?\
-DWITH_BOOST=/usr/local/mysql-8.0.11/boost/boost_1_66_0/boost?\
-DWITH_DEBUG=1?\
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql?\
-DMYSQL_DATADIR=/usr/local/mysql/data?\
-DWITH_BOOST=/usr/local/boost?\
-DSYSCONFDIR=/etc?\
-DEFAULT_CHARSET=utf8mb4?\
-DDEFAULT_COLLATION=utf8mb4_general_ci?\
-DENABLED_LOCAL_INFILE=1?\
-DEXTRA_CHARSETS=all
執行?make操作,?該過程執行時間比較長,請耐心等待。
make
執行make?install
make?install
切換到目錄/usr/local/mysql/bin下,初始化?MySQL,?此時數據庫root賬號的密碼為空。
./mysqld?--initialize-insecure?--user=mysql?--basedir=/usr/local/mysql?--datadir=/usr/local/mysql/data
技術分享圖片
16.配置啟動腳本
cp?/usr/local/mysql/support-files/mysql.server?/etc/init.d/mysqld
chkconfig?--add?mysqld
chkconfig?mysqld?on
17.啟動?mysqld
service?mysqld?start
輸出結果:Starting?MySQL?SUCCESS!
18.驗證mysql服務已經啟動和相關進程
ps?-ef?|?grep?mysqld
19.在數據庫本機登錄數據庫
./mysql?-uroot?-p
技術分享圖片
20.查看默認使用的數據庫引擎。
mysql>?SHOW?ENGINES;
技術分享圖片
21.查看默認創建的數據庫
mysql>?show?databases;
技術分享圖片
22.更新數據庫root密碼(由于之前初始化時候為空密碼),在連接到SQL的環境中,分別執行以下命令。
ALTER?USER?‘root‘@‘localhost‘?IDENTIFIED?BY?‘NEW_PASSWORD‘;
ALTER?USER?‘root‘@‘localhost‘?PASSWORD?EXPIRE?NEVER;
flush?privileges;
23.最后退出數據連接,用新的密碼登錄驗證設置的新密碼有效。
本文由職坐標整理并發布,希望對同學們學習MySQL有所幫助,更多內容請關注職坐標數據庫MySQL數據庫頻道!