標籤:發包 size linu user -o 查詢 start 操作 oss
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.最後退出資料連線,用新的密碼登入驗證設定的新密碼有效。
CentOS7 下源碼安裝MySQL 8.0.11