Ubuntu16和CentOS7下MySQL、MyRocks不同版本的安裝教程

來自MySQL官網(wǎng)

這只可耐的“小孩疼”充斥了我目前的整個實習(xí)生涯。

今天作為我裝MySQL的第N次嘗試,坐在電腦前,等待小孩疼下載安裝的憩時,默默碼下這些天跟MySQL的愛恨情愁。

關(guān)于MySQL,想來能有興趣點開我這篇文章的伙計大概是不需要我介紹什么是MySQL了。今天主要講的是關(guān)于安裝MySQL的過程。當(dāng)然,肯定不是簡單的Windows系統(tǒng)裝MySQL,而是Macbook裝MySQL以及CentOS7.0、Ubuntu16系統(tǒng)裝MySQL??吹竭@里就大概了解了,作者已經(jīng)在各種不同的系統(tǒng)版本下裝過MySQL無數(shù)次,也隨之而來踩過無數(shù)次坑,遇到無數(shù)次bug,查查補補能安裝成功也算幸事。

一、Macbook下使用MySQL或navicat Premium

Macbook說用戶體驗,的確很好,但是就市面的一些出名軟件,能做到有mac版本的都會有,實在沒有的,咱們用戶也沒辦法,所以其實在大學(xué)中,眾多需要windows系統(tǒng)下才能使用的軟件,我壓根沒用過,例如Visio,例如PowerDesigner,盡管mac版本有不同的代替品,不過體驗都是不一樣的嘛。

1. MySQL在Macbook上的安裝

網(wǎng)上其實一大批博文,我這里給大家介紹一篇

references:mac安裝mysql的兩種方法(含配置)

這里就涉及到Oracle的使用啦,身為一只假的程序員,Oracle課程學(xué)習(xí)是必備的,那么Macbook擁有者,如何快速實現(xiàn)使用Oracle進行數(shù)據(jù)庫操作呢,這個就更簡單了。安裝Navicat Premium,關(guān)于付費、試用、破解,當(dāng)然是鼓勵支持正版,但你要實在能找到破解版且愿意使用也不能強迫你。

在我們進行相關(guān)課程學(xué)習(xí)時,大部分同學(xué)都是使用學(xué)校機房搭建好的透明實驗室,使用賬號連接即可,當(dāng)然機房不開放了你就用不了了,所以我選擇了一種投機取巧的方式。

1. 安裝Navicat Premium

2.連接某同學(xué)已經(jīng)配置好的能使用Oracle的服務(wù)器

3.選擇新建數(shù)據(jù)庫,并選擇Oracle類型,大功告成!

注意:使用這種騷操作的同學(xué)會發(fā)現(xiàn),你無法進行授權(quán)、新建用戶或涉及權(quán)限的操作,這個問題我并沒有去解決,所以也沒法給出解決方案。Navicat Premium不僅支持Oracle、MySQL、PostgreSQL、SQL server、MariaDB、SQLite等,基本是一app在電腦,各種數(shù)據(jù)庫操作都能試試了。


二、MySQL5.7在ubuntu16下的安裝

reference:ubuntu-16.04源碼編譯安裝mysql-5.7.17

講真,我大概是個被上帝詛咒的天使,安裝MySQL能遇到各種問題,諸如上看貼的文章的安裝方式,我硬是一步一個鐵坑,頭鐵少女從cmake的bug坑好不容易走到make install complete,結(jié)果測試啟動失敗,over~ 源碼安裝方式失敗。

最后又重新找合適的博文,目前正在安裝中....

reference: 安裝Percona Server 5.7

源碼安裝步驟:

1.如果你暫未在ubuntu 系統(tǒng)中安裝git,那么你就需要使用 git 命令查詢你是否安裝了git 如果沒有安裝則輸入? sudo apt-get install git

2. $輸入 git clone https://github.com/percona/percona-server.git

3. $輸入 cdpercona-server

4. $輸入 git checkout5.7

5.$輸入 git submodule init

6.$輸入 git submodule update

7.$輸入 cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_CONFIG=mysql_release -DFEATURE_SET=community -DWITH_EMBEDDED_SERVER=OFF

8.$輸入 make

9.$輸入 make

其中,你可能會遇到:

?運行cmake語句時

此時只需? rm.CMakeCache.txt

然后重新運行cmake語句

?解決上面的問題后,運行cmake,又有錯誤,what the f**k???


如圖所示,當(dāng)前你確實boost1.59.0版本的boost庫,那能有什么辦法呢,只能繼續(xù)找解決辦法,畢竟“現(xiàn)在的我比之前的我更有智慧”。

解決方案:

?在ubuntu系統(tǒng)聯(lián)網(wǎng)下載boost1.59.0版本庫文件

直接在瀏覽器輸入 https://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz/download

然后移動到percona文件夾

cd percona-server

在原有的cmake語句中加入 -DWITH_BOOST=boost_1_59_0.tar.gz 其實就是指定boost所在目錄,這時候如果你之前沒有安裝ncurses,則會報錯,讓你進行安裝,當(dāng)然還有很多需要安裝的庫文件,這里我就只放我遇到缺少的庫文件啦!

sudo apt-get install libncurses5-dev? libncursesw5-dev libreadline-gplv2-dev zlibc zlib1g-dev 基本使用sudo apt-get install 要安裝的庫名 就可以完成。

這里有個小竅門,還是我大哥后面手把手教學(xué)告訴的我,在cmake時先盡量不要加很多參數(shù),要慢慢來,因為這樣你才會知道你缺少哪些庫了。

這里大家可以直接使用ccmake命令,進行可視化查看缺少哪些庫文件,有時候會遇到類似xplugin變量找不到的情況,這時候使用ccmake命令,你會發(fā)現(xiàn)可能是你某個test選項打開了,只需要調(diào)整為off就可以啦,按c命令可以實時刷新你下載的庫文件。

大功告成!


三、MySQL8.0在ubuntu16.04系統(tǒng)下的安裝

就我目前的安裝經(jīng)驗,果不其然,源碼安裝肯定會報一大堆錯誤,系統(tǒng)也重裝過好幾次了,于是我在網(wǎng)上找到了一篇巨簡單的二進制安裝方式。

reference:Installing MySQL 8.0 on Ubuntu 16.04 LTS in Five Minutes

1.? wget https://dev.mysql.com/get/mysql-apt-config_0.8.10-1_all.deb

2.? sudo dpkg -i mysql-apt-config_0.8.10-1_all.deb

3.? sudo apt-get update

4.? sudo apt-get install mysql-server

最后在/etc/my.cnf文件中添加一句“ +skip-grant-tables” 用于跳過用戶的權(quán)限檢查即可

關(guān)于后面的用戶設(shè)置和密碼之類的在此就不復(fù)述了,廣大的網(wǎng)友的力量總是強大的。


四、MySQL+RocksDB在ubuntu16.04系統(tǒng)下的安裝

reference:

https://www.percona.com/doc/percona-server/LATEST/myrocks/install.html

1. wget https://repo.percona.com/apt/percona-release_0.1-6.$(lsb_release -sc)_all.deb

2. sudo dpkg -i percona-release_0.1-6.$(lsb_release -sc)_all.deb

3. sudo apt-get update

4. sudo apt-get install percona-server-server-5.7

五、MySQL5.6+RocksDB在CentOS7系統(tǒng)下的安裝

首先,很失望的告訴讀者,讀到這里,我大概知道你是特意需要在centos7下使用MyRocks的,但是我只能遺憾的告訴你,我并沒攻關(guān)成功,不知道是因為centos7下面安裝失敗多次,文件太多版本更新之類的問題還是其他,導(dǎo)致最后報出了我無法在網(wǎng)上查詢到解決方案的錯誤。所以最后也沒有安裝成功。

以下是參考內(nèi)容:

reference:AliOS編譯安裝MyRocks

1.安裝必要的依賴包:

sudo yum install cmake gcc-c++ bzip2-devel libaio-devel bison zlib-devel snappy-devel

sudo yum install gflags-devel readline-devel ncurses-devel openssl-devel lz4-devel gdb git

關(guān)于gflags和lz4、zstd依賴包的下載可是費盡了我的腦細胞,最后整理原因,大概就是英語沒學(xué)好的鍋吧。

?gflags安裝:

cd mysql-5.6

git clone https://github.com/gflags/gflags.git

sudo apt-get install libgflags-dev

$ tar xzf gflags-$version-source.tar.gz

$ cd gflags-$version

$ mkdir build && cd build

$ ccmake ..

$ make

?lz4安裝

同理安裝

然后cd到lz4所在目錄 然后直接

$ make

$ make install

完成這兩步之后,如果你的電腦瘋狂報錯提示你zstd包不存在,那么你就需要好好看好我下面寫的了。

?reference: https://github.com/facebook/zstd

首先切換到mysql目錄下

git clone https://github.com/facebook/zstd.git

make

make install

make check

然后就繼續(xù)博客的內(nèi)容:

1. git clone https://github.com/facebook/mysql-5.6.git

2. cd mysql-5.6

3. git submodule init

4. git submodule update

5. cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DWITH_SSL=system -DWITH_ZLIB=bundled -DMYSQL_MAINTAINER_MODE=0-DENABLED_LOCAL_INFILE=1

6. make-j8

7. make install 指定文件夾

然后啟動可能會遇到sock文件不存在呀,找不到pid、mysqld文件啊諸如此類的,到時候在網(wǎng)上查找解決方案即可。

希望以上內(nèi)容對大家有所幫助。

po一篇長文,也為自己轉(zhuǎn)戰(zhàn)PM秋招積累人品。歡迎騷擾~

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容