1. 程式人生 > 實用技巧 >CentOS7(Linux)原始碼安裝MySQL5.7.30

CentOS7(Linux)原始碼安裝MySQL5.7.30

介紹

軟體應用最重要的就是資料庫了,可是還有小夥伴不會在Linux上安裝MySQL資料庫,今天就來講講如何在CentOS7環境使用原始碼進行安裝MySQL5.7.30。

MySQL官網下載連結:https://downloads.mysql.com/archives/community/

選擇自己合適的版本號,選擇.tar.gz檔案下載。

下載

下面使用mysql-boost5.7.30.tar.gz進行安裝,選擇原始碼Source Code,選擇帶Boost的版本,點選Download開始下載。

安裝環境

安裝 libaio,libaio 包的作用是為了支援同步I/O,對於資料庫之類的系統特別重要。

yum install -y libaio

安裝cmake,CMake是一個跨平臺的安裝(編譯)工具。

yum install -y cmake

安裝依賴

yum install -y gcc-c++ bison-devel  ncurses-devel  bison perl perl-devel  perl perl-devel

安裝

建立一個資源目錄把MySQL 安裝包上傳到這個目錄下

mkdir /usr/local/resource

解壓安裝包

tar -zxvf mysql-boost5.7.30.tar.gz

新增mysql組及使用者

groupadd mysql
useradd -r -g mysql mysql

若提示已存在說明已經新增好了

新建MySQL的安裝目錄

mkdir /usr/local/mysql

新建MySQL的資料儲存目錄

mkdir /usr/local/mysql/data

編譯安裝

進入解壓的目錄

cd /usr/local/resource/mysql-5.7.30

cmake編譯

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_BOOST=boost -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

這裡再寫一份換行版方便檢視引數,執行時選擇上面這行命令

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_BOOST=boost
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci

make編譯,此處時間比較長,約半小時,耐心等待

make

make安裝

make install

設定許可權

chown -R root /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql
chown -R mysql /usr/local/mysql/data

初始化MySQL

cd /usr/local/mysql/bin
./mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/ --initialize

初始化完成,並給root使用者生成了臨時密碼,這裡要把密碼記錄下來,稍後需要

複製mysql服務啟動指令碼

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

啟動MySQL服務

service mysqld start

登入

cd /usr/local/mysql/bin
./mysql -u root -p

輸入剛剛的密碼

0pLszS33sD>w

登入成功

修改MySQL使用者root的密碼為root

mysql> set password for root@localhost = password('root');

賦予許可權並設定可以遠端訪問

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

重新整理許可權

mysql> FLUSH PRIVILEGES;

檢視許可權


mysql> select user,host from mysql.user;

輸入exit退出

遠端測試連線成功

至此,MySQL5.7.30已經安裝成功!

命令

啟動

service mysqld start

重啟

service mysqld restart

停止

service mysqld stop

推薦閱讀:CentOS7原始碼安裝JDK

推薦閱讀:CentOS7原始碼安裝Nginx

喜歡的話記得推薦收藏哦~~~