mysql5.0資料庫原始碼編譯安裝
本次實驗的mysql、OS相關資訊如下:
Mysql:5.0.96 OS:centos 32 bit
最近公司要上新的業務,指明資料庫使用的是mysql5.0版本。如果是使用rpm包安裝的話,那就很簡單了。直接使用yum安裝即可,命令如下:
yum –y install mysql mysql-server
Yum方式安裝完畢後,直接啟動mysql資料庫服務即可。如下圖:
這樣基本上就可以了。
但是這樣安裝mysql資料庫,沒有進行定製。比如mysql資料庫的資料檔案儲存位置。rpm形式安裝的資料檔案預設位置為/var/lib/mysql。這個我們可以通過mysql的配置檔案檢視所得,如下圖:
實際的情況是,我們新的業務要求mysql資料庫的資料檔案需要單獨進行存放,這個使用rpm形式就不太容易達到要求。所以打算使用原始碼進行編譯安裝,而且自己也沒有對mysql資料庫進行原始碼安裝過。剛好趁這次機會學習如何對mysql資料庫進行原始碼安裝。
首先,在相應的網站下載mysql的安裝包。為什麼說是相應的網站,而不是mysql的官網。因為現在在官網無法下載到5.0版本的,只能下載到5.5以上的版本。我現在是在這個網站下載的:http://download.mysql.cn/src/
下載完畢上傳到伺服器上,具體如何上傳你可以使用winscp、FTP。或者也可以使用lrzsz這個軟體。
我現在使用的就是lrzsz這個軟體,如果你的伺服器沒有安裝的話,可以通過:
yum –y install lrzsz
進行安裝,如下圖:
rz 是上傳的命令,sz是下載的命令。
我們現在使用日誌命令把mysql的安裝包,上傳到伺服器上,如下圖:
Mysql安裝包已經上傳完畢,那麼我們現在進行安裝mysql之前的工作。
安裝mysql編譯所需要的工具包,如下圖:
yum -y install gcc gcc-c++ ncurses-devel
工具包安裝完畢後,我們來新建相關的使用者。第一個使用者ilanni,用來安裝mysql使用。第二個使用者是mysql,用來執行mysql的。如下圖:
把mysql安裝包移動到ilanni使用者的家目錄下,並解壓,如下圖:
以上工作是前提工作,做完後。我們現在進入mysql-5.0.96目錄開始安裝mysql。
首先編譯mysql資料庫,如下圖:
./configure –prefix=/usr/local/mysql 其中/usr/local/mysql為mysql資料庫的安裝位置。
可以看到沒有報錯,那我們開始make,如下圖:
Make過程比較慢,我這邊大約10分鐘左右。
Make終於完畢了,通過上圖可以沒有報錯。
下面開始make install,如下圖:
Make install還是比較快的,可以看到沒有報錯。
Mysql已經安裝完畢,下面開始進行相關的配置。
還是在該安裝目錄下,如下圖:
複製support-files目錄下的my-medium.cnf到/etc/下作為mysql的配置檔案:
cp support-files/my-medium.cnf /etc/my.cnf
複製support-files目錄下的mysql.server到/etc/init.d/目錄下作為mysql的啟動檔案
現在我們來啟動下使用/etc/init.d/mysqld啟動mysql 試下,如下圖:
可以看到系統提示我們,沒有執行該指令碼的許可權。而mysqld指令碼的許可權,看下圖:
可以很明顯的看到目前該指令碼的許可權為644,根本沒有執行許可權。
現在更改該指令碼的許可權,如下圖:
Ok,該檔案的許可權修改完畢後,我們來初始化mysql資料庫。在文章的開頭我就說了,我現在要把mysql的資料檔案存放在/data目錄下。
首先要建立/data目錄,並修改該目錄的所屬使用者及使用者組。如下圖:
修改完畢後,我們還需要修改/usr/local/mysql的所屬使用者及使用者組,如下圖:
以上修改完畢後,我們還需要修改mysql的配置檔案。主要是要在配置檔案中加入目前自己定義資料檔案位置,如下圖:
以上所有的修改進行完畢後,我們在執行mysql安裝目錄scripts下mysql_install_db檔案,如下圖:
./scripts/mysql_install_db –user=mysql 中的—user=mysql一定要有。
我們來檢視mysql初始化的結果,檢視/data目錄,如下圖:
可以看到mysql的預設資料mysql及test都在裡面。
現在我們來啟動mysql看看實際的情況,如下圖:
/etc/init.d/mysqld start
如果要把mysql開機啟動,可以使用chkconfig命令。如下圖:
如果你想在如何目錄下直接mysql命令,需要把/usr/local/mysql/bin路徑加入到全域性設定/etc/profile檔案中,如下圖:
Ok,到此mysql資料庫就安裝完畢。
如果mysql客戶端連線,mysql服務比較慢的話。我們需要在my.cnf檔案中加入skip-name-resolve,如下:
PS:有關本次實驗使用的命令如下,在執行過程中建議儘量按照命令的順序進行操作:
yum -y install gcc gcc-c++ ncurses-devel
tar -xf mysql-5.0.22.tar.gz
useradd ilanni
useradd -s /sbin/nologin mysql
cd /home/ilanni/mysql-5.0.22
./configure –prefix=/usr/local/mysql
make
make install
cp /home/ilanni/mysql-5.0.96/support-files/my-medium.cnf /etc/my.cnf
cp /home/ilanni/mysql-5.0.96/support-files/mysql.server /etc/init.d/mysqld
chmod -R 755 /etc/init.d/mysqld
chown -R mysql:mysql /usr/local/mysql
mkdir /data
chown -R mysql:mysql /data
/usr/local/mysql/bin/mysql_install_db –basedir=/usr/local/mysql
/etc/init.d/mysqld start
echo PATH=$PATH:/usr/local/mysql/bin/ >>/etc/profile
tail -10 /etc/profile
source /etc/profile
相關文章
- 原始碼編譯安裝Redis原始碼編譯Redis
- 原始碼編譯安裝的原理原始碼編譯
- 【轉】MySQL原始碼編譯安裝MySql原始碼編譯
- MySQL5.7.16原始碼編譯安裝MySql原始碼編譯
- 阿里雲mysql原始碼編譯安裝阿里MySql原始碼編譯
- nginx原始碼編譯安裝(詳解)Nginx原始碼編譯
- linux-原始碼的編譯安裝和解除安裝Linux原始碼編譯
- Greenplum_原始碼編譯安裝和RPM包安裝原始碼編譯
- Linux環境PostGIS原始碼編譯安裝Linux原始碼編譯
- 04 原始碼編譯安裝與介紹原始碼編譯
- PostgreSQL原始碼學習 win10原始碼編譯安裝SQL原始碼Win10編譯
- Ubuntu 16.04原始碼編譯安裝Apache 2.4.25教程Ubuntu原始碼編譯Apache
- Centos7下原始碼編譯安裝apacheCentOS原始碼編譯Apache
- PG資料庫定時任務:PgAgent編譯安裝使用資料庫編譯
- Mysql5.6 for Centos6.5原始碼編譯安裝MySqlCentOS原始碼編譯
- [環境搭建] 透過原始碼編譯安裝 Redis原始碼編譯Redis
- Nginx1.19 php8.0 原始碼編譯安裝NginxPHP原始碼編譯
- Centos7安裝(四)抓包工具wireshark原始碼編譯安裝CentOS原始碼編譯
- muduo網路庫編譯安裝編譯
- 樹莓派開發筆記(十五):樹莓派4B+從原始碼編譯安裝mysql資料庫樹莓派筆記原始碼編譯MySql資料庫
- 麒麟系統開發筆記(三):從Qt原始碼編譯安裝之編譯安裝Qt5.12筆記QT原始碼編譯
- Ubuntu 16.04下 Mysql5.7.17原始碼編譯與安裝UbuntuMySql原始碼編譯
- CentOS 7.4 環境下原始碼編譯安裝 postgreSQL 11.4CentOS原始碼編譯SQL
- GDB 除錯 Mysql 實戰(一)原始碼編譯安裝除錯MySql原始碼編譯
- Ubuntu20.04 從原始碼編譯安裝 python3.10Ubuntu原始碼編譯Python
- 基於Linux的MySQL5.7原始碼編譯安裝LinuxMySql原始碼編譯
- 【Visual Leak Detector】原始碼編譯 VLD 庫原始碼編譯
- Linux環境下, 原始碼編譯安裝詳解 (編譯CMake 3.15 和 gcc 5.3.0 為例)Linux原始碼編譯GC
- Jtti:美國Linux伺服器原始碼編譯的安裝方式JttiLinux伺服器原始碼編譯
- CentOS 7.4 環境下原始碼編譯(多例項)安裝 Mysql 5.7.26CentOS原始碼編譯MySql
- 編譯安裝zabbix編譯
- 安裝編譯ffmpeg編譯
- Griffin編譯安裝編譯
- 編譯安裝nmon編譯
- swoole 編譯安裝編譯
- apache編譯安裝Apache編譯
- centos7:從原始碼編譯安裝 nfs-ganesha v2.8.4CentOS原始碼編譯NFS
- NH.A.0002__zabbix_lamp+zabbix_server原始碼編譯安裝_V2020.10.22LAMPServer原始碼編譯
- CentOS6.9原始碼編譯安裝nginx+php7+mysql環境CentOS原始碼編譯NginxPHPMySql