1.0 我的操作系統(tǒng)是CentOS Linux release 7.6.1810 (Core)
系統(tǒng)詳細(xì)信息如下:
Linux version 3.10.0-957.1.3.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) )
關(guān)于MySQL如何下載,請參考博文:
【數(shù)據(jù)庫】2.0 如何獲得MySQL
https://www.cnblogs.com/xiaofu007/p/10293529.html
windows系統(tǒng)環(huán)境下安裝MySQL傳送門:
【數(shù)據(jù)庫】3.0 MySQL入門學(xué)習(xí)(三)——Windows系統(tǒng)環(huán)境下MySQL安裝
https://www.cnblogs.com/xiaofu007/p/10293660.html
2.0 Oracte網(wǎng)站可以參考上面博文“【數(shù)據(jù)庫】2.0 如何獲得MySQL”基礎(chǔ)上,MySQL官網(wǎng)下載版本操作如下:

?
往下滾動,找到“MySQL Community Edition (GPL)”:

?
點擊下載社區(qū)版:

?
點擊:下載社區(qū)版5.7:

?
自動識別當(dāng)前電腦的操作系統(tǒng),圈1是32位,圈2是64位,為選擇64為下載安裝:

?
選擇“No thanks, just start my download.”(不,謝謝,開始下載吧。):

?
下載完畢。
3.0 Fedora/openSUSE linux發(fā)行版系列(Centos屬于此類)軟件安裝包的區(qū)別:
1、軟件包分類
源碼包:C源代碼包
rpm包:編譯之后的二進制包
2、源碼包
優(yōu)點:開源;可以自由選擇所需功能;可看源代碼;卸載方便(直接刪除安裝位置);
缺點:安裝步驟過多;編譯時間過長;
3、RPM包
優(yōu)點:使用簡單,只需要幾個命令就可以實現(xiàn)包的安裝、升級、查詢、卸載;安裝速度快;
缺點:不能看源代碼;功能選擇不如源代碼靈活;依賴性;
4.0 MySQL的安裝方式有三種:
rpm安裝方式:最方便,只需要在安裝包目錄下,輸入“rpm -ivh 文件名.rpm”即可實現(xiàn)安裝。當(dāng)然,如果安裝不上可以選擇“rpm -ivh --nodeps --force 文件名rpm”強制安裝,但不建議如此操作。rpm安裝會存在很多配置功能不提供給我們,不方便靈活配置。
二進制安裝:提供一個二進制版本的安裝包,安裝步驟會比rpm方式復(fù)雜一些。但是這種安裝方式也有很多靈活配置的地方?jīng)]有提供給我們。
源代碼安裝:最靈活,有大量的參數(shù)供我們調(diào)整,所以優(yōu)先(推薦)使用這種安裝方式。
5.0 二進制安裝:
shell>groupadd mysql
shell>userradd -g mysql mysql
shell>cd /usr/local
shell>gunzip</path/to/mysql-VERSION-OS.tar.gz|tar xvf-
shell>ln -s full-path-to-mysql-VERSION-QS mysql
shell>cd mysql
shell>scripts/mysql_install_db --user=mysql
shell>chown -R root
shell>chown -R mysql data
shell>chown -R mysql
shell>bin/mysql_safe --user=mysql&
6.0源代碼安裝("#"號內(nèi)只是說明解釋內(nèi)容,不是具體運行命令):
shell>groupadd mysql
shell>userradd -g mysql mysql
shell>gunzip</path/to/mysql-VERSION-OS.tar.gz|tar xvf-
shell>cd mysql-VERSION
#configure作用:檢測系統(tǒng)是否有CC或GCC,生成Makefile,控制MySQL的編譯動作,是SHELL腳本,有很多參數(shù)可供選擇,configure常用選項:
# -prefix : 設(shè)定安裝路徑,默認(rèn)為“/usr/local”;
# -datadir : 設(shè)定MySQL數(shù)據(jù)文件存放路徑;
# -with-charset : 設(shè)定系統(tǒng)默認(rèn)字符集;
# -with-collation : 系統(tǒng)默認(rèn)的校驗規(guī)則;
# -with-extra-charsets : 出了默認(rèn)字符集之外需要編譯安裝的字符集;
# -with-unix-socket-path : 設(shè)定socket文件地址;
# -with-tcp-port : 指定特定監(jiān)聽端口,默認(rèn)3306;
# -with-mysqld-user : 指定運行mysqld的os用戶,默認(rèn)為mysql;
# -with-query-cache : 禁用Query Cache功能;
# -without-innodb : 禁用Innodb存儲引擎;
# -with-partition : 在5.1版本中開啟partition支持特性;
# -enable-thread-safe-client :以線程方式編譯客戶端;
# -with-pthread : 強制使用pthread線程庫編譯;
# -with-named-thread-libs : 指定使用某個特定的線程庫編譯;
# -with-debug : 使用非debug模式
# -with-mysqld-ldflags : mysql的額外link參數(shù)
# -with-client-ldflags : client的額外link參數(shù)。
shell>./configure --prefix=/usr/local/mysql
shell>make
shell>make install
拷貝參數(shù)文件
shell>cp support-file/my-medium.cnf/etc/my.cnf
shell>cd /usr/local/mysql
shell>bin/mysql_install_db --user=mysql
shell>chown -R root
shell>chown -R mysql var
shell>chgrp -R mysql
7.0 實際安裝操作(之所以顯示綠色是因為之前把文件編輯權(quán)限擴展為“775權(quán)限,即"drwxr-xr-x",權(quán)限相當(dāng)高)。

?
第一個包是linux系統(tǒng)環(huán)境的安裝包,第二個包是源代碼包,兩個包先解壓:

?

?
解壓完畢后如下:

?
更改所有文件授權(quán)為普通用戶:

?
7.1 源代碼安裝:
首先我們進入“mysql-5.7.24”目錄:

?
因為源碼都是C語言編寫,所以安裝需要c語言的編譯器,我們用GCC:

?
按照上面所述步驟,先組建起來:

?
這里顯示已存在,表示可能我已經(jīng)安裝好了,測試一下:

?
7.2 果然,已經(jīng)安裝好了MySQL,因為已經(jīng)安裝,源代碼安裝無法繼續(xù),有時間會再建一個虛擬機模擬裝一遍。但是其實MySQL沒有這么復(fù)雜,具體安裝可以參考:
CentOS7安裝MySQL
https://www.cnblogs.com/bigbrotherer/p/7241845.html
8.0 下面進行一些初始化設(shè)置。
由于自己將在windows系統(tǒng)環(huán)境下使用MySQL,所以會實際操作將基于windows環(huán)境下:
【數(shù)據(jù)庫】5.0 MySQL入門學(xué)習(xí)(五)——MySQL源碼了解及MySQL初始化設(shè)置
https://www.cnblogs.com/xiaofu007/p/10296045.html
Linux環(huán)境下,初始化設(shè)置可以參考如下所述鏈接:
CentOS7安裝MySQL
https://www.cnblogs.com/bigbrotherer/p/7241845.html
9.0 源代碼安裝實際命令輸入(Linux操作系統(tǒng),具體版本號以自己下載的為主,進入root權(quán)限,進入解壓后的mysql源代碼文件夾目錄下):
groupadd mysql
useradd -g mysql mysql
tar -xzvf ./mysql-5.1.52.tar.gz
./configure --prefix=/opt/mysql5152/ \
--without-debug \
--enable-thread-safe-client \
--enable-assembler \
--enable-profiling \
--with-mysqld-ldflags=-all-static \
--with-charset=latin1 \
--with-extra-charsets=utf8,gbk \
--with-mysqld-user=mysql \
--without-embedded-server \
--with-server-suffix=bbk \
--with-plugin=innobase,partition \
mkdir data
chown mysql:mysql ./data/ -R
cp /root/mysql-5.1.52/support-files/my-small.cnf /opt/mysql5152/my.cnf
在my.cnf mysqld標(biāo)簽下中添加(vim ./my.cnf ):
basedir=/opt/mysql5
datadir=/opt/mysql5/data

?
./bin/mysql_install_db --defaults-file=./my.cnf --user=mysql

?
select version();

?
END