一、環境準備
在開始編譯安裝MySQL之前,需要先準備好一些依賴環境:
1、GCC編譯器和make命令(如果已經安裝則可以跳過這一步)
sudo apt-get update
sudo apt-get install build-essential
2、cmake工具
sudo apt-get install cmake
3、ncurses庫
sudo apt-get install libncurses5-dev libncursesw5-dev
二、下載MySQL源碼
從MySQL官網上下載所需版本的源碼,這裡以最新版本為例:
wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.26.tar.gz
三、解壓源碼並進入目錄
tar -zxvf mysql-8.0.26.tar.gz
cd mysql-8.0.26
四、開始編譯安裝
1. 創建一個新的用戶組和用戶
在編譯之前,我們需要創建一個新的MySQL用戶組和MySQL用戶,並將編譯後的MySQL安裝在該用戶下,這麼做可以增強安全性。
創建MySQL用戶組
sudo groupadd mysql
創建MySQL用戶
sudo useradd -r -g mysql -s /bin/false mysql
2. 配置編譯選項
進入MySQL源代碼目錄中的cmake配置目錄,並執行以下命令配置編譯選項:
cd cmake
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_general_ci \
-DWITH_BOOST=/usr/local
這裡解釋下每個選項的含義:
-DCMAKE_INSTALL_PREFIX:指定MySQL安裝路徑
-DMYSQL_DATADIR:指定MySQL數據存放路徑
-DSYSCONFDIR:指定MySQL配置文件存放路徑
-DWITH_MYISAM_STORAGE_ENGINE:支持MyISAM存儲引擎
-DWITH_INNOBASE_STORAGE_ENGINE:支持InnoDB存儲引擎
-DWITH_MEMORY_STORAGE_ENGINE:支持Memory存儲引擎
-DWITH_READLINE:使用readline庫,提高命令行交互的效率
-DENABLED_LOCAL_INFILE:支持從本地讀取數據
-DDEFAULT_CHARSET:設置默認字符集
-DDEFAULT_COLLATION:設置默認校對規則
-DWITH_BOOST:指定boost庫路徑(如果需要支持InnoDB memcached接口,需要指定)
3. 編譯並安裝
在MySQL源碼目錄中執行以下命令進行編譯,這裡使用make命令:
make
編譯完成後,執行以下命令進行安裝:
sudo make install
五、啟動MySQL服務
1. 初始化數據
在安裝目錄下的bin目錄中執行以下命令來初始化數據:
sudo /usr/local/mysql/bin/mysqld --initialize --user=mysql
初始化完成後,會輸出一個隨機生成的密碼,需要記錄下來,後面登錄MySQL需要使用該密碼。
2. 啟動服務
執行以下命令來啟動MySQL服務:
sudo systemctl start mysqld
如果需要系統重啟後自動啟動MySQL服務,可以執行以下命令:
sudo systemctl enable mysqld
3. 配置MySQL安全
安裝完成後,需要進行一些基本的安全配置,包括修改root用戶密碼、移除test數據庫等。
執行以下命令進入MySQL安全配置嚮導:
sudo /usr/local/mysql/bin/mysql_secure_installation
按照提示依次進行操作即可。
六、連接MySQL
1. 登錄MySQL
在終端中執行以下命令登錄到MySQL:
mysql -u root -p
回車後輸入剛才記錄下來的密碼即可登錄。
2. 修改root用戶密碼
執行以下SQL命令來修改root用戶密碼:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密碼';
這裡的“新密碼”為自己設定的新密碼。
3. 創建新用戶
執行以下SQL命令來創建一個新用戶:
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
這裡的“username”為新用戶名,“password”為新用戶密碼。
4. 授權
執行以下SQL命令來授權新用戶訪問某個數據庫:
GRANT ALL PRIVILEGES ON dbname.* TO 'username'@'localhost';
這裡的“dbname”為數據庫名,“username”為新用戶名。
5. 退出MySQL
執行以下命令退出MySQL:
exit;
七、總結
到這裡,MySQL的編譯安裝就完成了。
原創文章,作者:UYUAK,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/372501.html