首頁 >資料庫 >mysql教程 >centos 編譯 安裝 mysql

centos 編譯 安裝 mysql

WBOY
WBOY原創
2023-05-23 15:49:071066瀏覽

CentOS是一種流行的Linux發行版,對於想要在CentOS上建立MySQL資料庫的使用者來說,常見的方法是使用套件管理器(例如yum)來安裝預先編譯的二進位檔案。但有時候我們可能需要自己從原始碼編譯建置MySQL,本文就來介紹在CentOS上如何編譯安裝MySQL的過程。

第一步:準備編譯環境

在編譯MySQL之前,我們需要安裝一些必要的依賴項,以確保系統能夠編譯和執行MySQL。可以透過以下命令一次安裝所需的依賴:

sudo yum -y install cmake gcc gcc-c++ ncurses-devel openssl-devel wget 

上述命令將安裝編譯MySQL所需的幾個重要依賴,包括cmake、gcc、gcc-c 、ncurses-devel、openssl-devel和wget。

第二步:下載MySQL原始碼

你可以從MySQL官方網站下載最新的原始碼包,例如“mysql-8.0.23.tar.gz”,儲存到“/在usr/local/src」資料夾中:

sudo wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.23.tar.gz -P /usr/local/src/

然後將下載的原始碼包解壓縮:

sudo tar xf /usr/local/src/mysql-8.0.23.tar.gz -C /usr/local/src/

然後將MySQL解壓縮的資料夾的所有權賦給MySQL使用者:

sudo chown -R mysql:mysql /usr/local/src/mysql-8.0.23

第三個步驟:編譯MySQL

在編譯MySQL之前,我們需要建立一個建置目錄,並CD到該目錄:

sudo mkdir -p /usr/local/mysql/build
cd /usr/local/mysql/build

接下來,我們使用cmake指令為MySQL進行配置。設定“-DCMAKE_INSTALL_PREFIX”選項為“/usr/local/mysql”,指定要安裝MySQL二進位檔案和函式庫檔案的目錄:

sudo cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql

然後我們執行make指令來編譯MySQL:

sudo make

此過程需要一些時間,取決於您的機器性能。一旦編譯完成,您可以使用以下命令將MySQL安裝到指定目錄(/usr/local/mysql):

sudo make install

第四步:設定MySQL

一旦MySQL編譯並安裝成功,我們就需要為其建立設定檔以啟動MySQL守護程式。

在MySQL原始碼目錄下,將「my.cnf」樣板檔案複製到「/etc」目錄下:

sudo cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

然後將「/usr/local/mysql/bin」路徑新增至系統的PATH環境變數:

sudo vi /etc/profile.d/mysql.sh

在檔案中新增以下命令:

export PATH=$PATH:/usr/local/mysql/bin

使設定檔生效:

source /etc/profile.d/mysql.sh

然後設定MySQL資料目錄,並為MySQL建立一個新的系統使用者和群組:

sudo mkdir -p /var/lib/mysql
sudo groupadd mysql
sudo useradd mysql -r -g mysql -s /bin/false
sudo chown -R mysql:mysql /var/lib/mysql

接下來,我們要執行mysql_install_db腳本,以初始化MySQL系統表並設定基本安全設定:

sudo /usr/local/mysql/bin/mysql_install_db --user=mysql --ldata=/var/lib/mysql

最後,我們將建立一個Systemd服務文件,以便MySQL可以自動啟動並在系統重新啟動後重新啟動:

sudo vi /etc/systemd/system/mysql.service

將以下內容新增至檔案:

[Unit]
Description=MySQL Server
After=network.target

[Service]
User=mysql
Group=mysql
WorkingDirectory=/usr/local/mysql
Type=forking
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --pid-file=/var/run/mysqld/mysqld.pid
ExecStop=/usr/local/mysql/bin/mysqladmin -p shutdown
TimeoutSec=30
Restart=always

[Install]
WantedBy=multi-user.target

然後重新載入Systemd並啟動MySQL服務:

sudo systemctl daemon-reload
sudo systemctl enable mysql
sudo systemctl start mysql

現在你已經成功地在CentOS上編譯安裝了MySQL!您可以使用以下命令啟動、停止和重新啟動MySQL服務:

sudo systemctl start mysql
sudo systemctl stop mysql
sudo systemctl restart mysql

以上是centos 編譯 安裝 mysql的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn