CentOS7安裝通用二進制格式MariaDB10.2.8-創(chuàng)新互聯(lián)

什么是MariaDB

MariaDB 是MySql的一個分支。 了解一下數據庫的發(fā)展歷史,我們知道,MySql數據庫不但二次易主,而且還被打入了冷宮(先被sun收購,然后sun被Oracle收購)。因為Oracle有自己的數據庫,同時只有Oracle自己的員工可以進行MySql的研發(fā),所以MySQL之父Widenius先生離開了Sun之后,覺得依靠Sun/Oracle來發(fā)展MySQL,實在很不靠譜,于是決定另開分支,這個分支的名字叫做MariaDB。
MariaDB不僅僅是Mysql的一個替代品,它的主要目的是創(chuàng)新和提高Mysql的技術。
MariaDB是基于MySql原來技術的基礎上,進行的新的開發(fā)發(fā)展,同時兼容絕大多數MySql原有技術,對于開發(fā)者來說,幾乎感受不到任何的不同。目前MariaDB是發(fā)展最快的MySQL分支版本,新版本發(fā)布速度已經超過了Oracle官方的MySQL版本。
LAMP架構盛極一時,這離不開MySQL的免費與易用,但是在Oracle收購了Sun之后,很多公司開始擔憂MySQL的開源前景,而最近Oracle進一步閉源的舉措更是讓人難以安心,眾多互聯(lián)網公司紛紛開始尋求MySQL的替代方案。  MariaDB繼續(xù)保持開源的理念,源源不斷的發(fā)布新版本,為互聯(lián)網技術提供了無限的可能,同時很多互聯(lián)網巨頭已經遷移并使用了MariaDB,所以我們接下來就開始學習MariaDB啦。

創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務領域包括:網站設計制作、做網站、企業(yè)官網、英文網站、手機端網站、網站推廣等服務,滿足客戶于互聯(lián)網時代的召陵網站設計、移動媒體設計的需求,幫助企業(yè)找到有效的互聯(lián)網解決方案。努力成為您成熟可靠的網絡建設合作伙伴!

開始安裝MariaDB

一 準備實驗環(huán)境

  • 首先去MariaDB的官方網站上下載MariaDB的二進制安裝包,下載地址 https://downloads.mariadb.org/

  • 準備一個沒有安裝過MySql的干凈的系統(tǒng)。

二 準備用戶和數據目錄

首先準備數據庫能夠所需要使用的用戶和用戶組。

# 添加名為mysql的用戶組,并指定gid 為306 # -r 為創(chuàng)建系統(tǒng)用戶組 groupadd -r -g 306 mysql # -r  表示創(chuàng)建系統(tǒng)用戶   # -g 表示執(zhí)行所屬組的gid 為306 # -u  表示指定uid 為306 # -m 創(chuàng)建家目錄 # -d 指定家目錄的路徑   # mysql  想要添加的用戶名 useradd -r -g 306 -u 306 –m –d /app/data mysql

指定數據目錄,數據目錄的作用就是存儲數據庫的位置。以 /app/dbdata 為例。

chown mysql:mysql /app/dbdata

下面我們用一張動態(tài)圖來演示上面的兩個步驟。

CentOS7安裝通用二進制格式MariaDB 10.2.8

三 準備二進制程序

對于已經編譯好的二進制格式的程序包,通常我們解壓之后就能夠直接使用數據庫。但是事實上不是這么簡單。如果我們曾經自己編譯過程序包的話,我們就會知道,在編譯二進制程序的過程中,需要指定一些腳本的目錄,或者是二進制執(zhí)行程序的路徑。對于MariaDB也是如此,因為我們下載的是已經編譯好的二進制程序包,所以我們解壓的程序也要放到固定的目錄下,這個目錄就是/usr/local/mysql。

下面就是解壓二進制程序的步驟,不過我們沒有直接創(chuàng)建mysql 目錄,而是建立了一個軟連接指向了我們解壓之后的目錄。

# 將壓縮文件解壓到 /usr/local 路徑下 [root@localhost ~]#tar xvf mariadb-10.2.8-linux-x86_64.tar.gz  -C /usr/local    # 切換目錄 [root@localhost ~]cd /usr/local/ # 針對解壓后的路徑 建立軟連接 [root@localhost local]#ln -sv mariadb-10.2.8-linux-x86_64/ mysql # 查看建立之后的軟連接 [root@localhost local]#ll -d m* drwxrwxr-x 12 1021 1004 290 Aug 18 04:16 mariadb-10.2.8-linux-x86_64 lrwxrwxrwx  1 root root  28 Sep 27 09:39 mysql -> mariadb-10.2.8-linux-x86_64/ #  修改目錄的權限,讓mysql 用戶具有全部高權限。 [root@localhost local]#chown -R root:mysql /usr/local/mysql/ [root@localhost local]#ll -d m* drwxrwxr-x 12 root mysql 290 Aug 18 04:16 mariadb-10.2.8-linux-x86_64 lrwxrwxrwx  1 root root   28 Sep 27 09:39 mysql -> mariadb-10.2.8-linux-x86_64/

下面我們去查看一下 解壓后的目錄內一共都包含哪些內容。

[root@localhost mysql]#ll total 176 drwxrwxr-x  2 root mysql  4096 May  3 02:05 bin -rw-r--r--  1 root mysql 17987 Aug 17 18:05 COPYING -rw-r--r--  1 root mysql 86263 Aug 17 18:05 COPYING.thirdparty -rw-r--r--  1 root mysql  2275 Aug 17 18:05 CREDITS drwxrwxr-x  3 root mysql    18 Aug 18 04:16 data -rw-r--r--  1 root mysql  8245 Aug 17 18:05 EXCEPTIONS-CLIENT drwxrwxr-x  3 root mysql    19 Aug 18 04:15 include -rw-r--r--  1 root mysql  8694 Aug 17 18:05 INSTALL-BINARY drwxrwxr-x  4 root mysql   318 May  3 02:05 lib drwxrwxr-x  4 root mysql    30 Aug 18 04:16 man drwxrwxr-x 11 root mysql  4096 Aug 18 04:16 mysql-test -rw-r--r--  1 root mysql  2371 Aug 17 18:05 README.md -rw-r--r--  1 root mysql 19510 Aug 17 18:05 README-wsrep drwxrwxr-x  2 root mysql    30 Aug 18 04:16 scripts drwxrwxr-x 30 root mysql  4096 Aug 18 04:16 share drwxrwxr-x  4 root mysql  4096 Aug 18 04:16 sql-bench drwxrwxr-x  3 root mysql   275 Aug 18 04:16 support-files
  • bin: 可執(zhí)行的二進制程序的存放目錄,客戶端程序mysql就位于這個目錄下。

  • COPYING:版權以及開源信息

  • COPYING.thirdparty: 版權信息

  • CREDITS:關于MariaDB軟件基金會的一些相關信息,里面還有國內的互聯(lián)網巨頭阿里

  • data:默認的數據庫存放目錄,如果我們一開始沒有指定數據庫存放目錄的話,那就會被存儲到這個位置。

  • EXCEPTIONS-CLIENT:例外情況

  • include:MariaDB 所需要的一些程序文件

  • INSTALL-BINARY: 安裝幫助文檔,可以詳細閱讀,對安裝數據庫有很大的幫助

  • lib: 軟件運行所需要的庫文件

  • man:軟件的幫助文檔

  • mysql-test: 數據庫的測試組件

  • scipts:mysql初始化初始化時要用到的腳本文件,通讀一下腳本,可以了解Mysql 的安裝過程

  • share: 共享的文件內容

  • support-files: mysql 正常運行所需要的配置文件或者文檔,這一點很重要,如果我們要自定義配置文件的話,就需要參考這里面的配置文件來進行定義。

這里有一點需要注意:data目錄是數據庫的存放路徑,我們在之前已經手動指定。在實際生產中,企業(yè)數據增長很快,數據庫文件有可能會很大,因此最好將該目錄指定到一個單獨的磁盤上,或者大分區(qū),或者使用邏輯卷都可以,避免因物理空間不足,導致出現故障。

四 準備配置文件

MariaDB 的配置文件可以存放在多個路徑下面。但是配置文件的查找次序是固定的。這樣也就導致了,配置文件具有了優(yōu)先級,后面的配置會覆蓋掉前面的配置(配置參數相同的情況下)。  我們參考MariaDB 安裝路徑下的support-files 中的配置文件,創(chuàng)建一個我們自己的配置文件并存放于/etc/mysql/my.cnf 中

# 創(chuàng)建配置文件路徑  [root@localhost ~]#mkdir /etc/mysql  [root@localhost ~]#cd /etc/mysql # 將參考文件復制到我們創(chuàng)建的mysql 路徑下 [root@localhost mysql]#cp /usr/local/mysql/support-files/my-huge.cnf  /etc/mysql/my.cnf

然后在這個配置文件中,加入我們剛剛的指定的一些目錄和信息。如下圖所示。

CentOS7安裝通用二進制格式MariaDB 10.2.8

前面我們說過,配置文件的查找執(zhí)行是有一定順序的。當MariaDB安裝成功之后,執(zhí)行下面的命令,就可以查看到配置文件的查找順序了。

# 創(chuàng)建配置文件路徑  [root@localhost ~]#mkdir /etc/mysql  [root@localhost ~]#cd /etc/mysql # 將參考文件復制到我們創(chuàng)建的mysql 路徑下 [root@localhost mysql]#cp /usr/local/mysql/support-files/my-huge.cnf  /etc/mysql/my.cnf

五 創(chuàng)建數據庫文件

進入到 /usr/local/mysql/ 路徑下,創(chuàng)建數據庫文件。在創(chuàng)建數據庫的同時指定數據庫存放目錄以及默認用戶。

[root@localhost mysql]#cd /usr/local/mysql/ [root@localhost mysql]#./scripts/mysql_install_db --datadir=/app/dbdata --user=mysql # 切換到我們指定的數據庫存放路徑下面,可以看到一些相關文件。這里面的每一個路徑就是一個數據庫。 [root@localhost mysql]#cd /app/dbdata/ [root@localhost dbdata]#ls aria_log.00000001  ib_buffer_pool  ib_logfile0  mysql             mysql-bin.index  performance_schema aria_log_control   ibdata1         ib_logfile1  mysql-bin.000001  mysql-bin.state  test

六 準備日志文件

因為CentOS 6 和CentOS 7 的日志路徑有所不同,所以創(chuàng)建的日志文件的路徑也是不一樣的。CentOS6 中是/var/log/mysqld.log,而CentOS 7 中則是 /var/log/mariadb/mariadb.log

# 創(chuàng)建文件路徑 [root@localhost mysql]#mkdir /var/log/mariadb # 創(chuàng)建日志文件 [root@localhost mysql] /var/log/mariadb/mariadb.log # 修改文件權限 [root@localhost mysql]#chown mysql /var/log/mariadb/mariadb.log

如果這一步,不確定應該創(chuàng)建哪些文件,那么就可以先執(zhí)行第七步操作,然后根據第七步的錯誤提示,來創(chuàng)建我們所需要的文件。

七 準備服務腳本,并啟動服務

將mysql的服務腳本復制到服務目錄下。因為CentOS7 與低版本的服務兼容,所以我們就直接將腳本復制到/etc/init.d/目錄下就好。

#復制mysql的腳本到服務目錄下 [root@localhost mysql]#cp support-files/mysql.server  /etc/rc.d/init.d/mysqld # 將mysql的服務添加到開機啟動中 [root@localhost mysql]#chkconfig --add mysqld [root@localhost mysql]#chkconfig --list Note: This output shows SysV services only and does not include native       systemd services. SysV configuration data might be overridden by native       systemd configuration.       If you want to list systemd services use 'systemctl list-unit-files'.       To see services enabled on particular target use             'systemctl list-dependencies [target]'. mysqld          0:off 1:off 2:on 3:on 4:on 5:on 6:off netconsole      0:off 1:off 2:off 3:off 4:off 5:off 6:off network         0:off 1:off 2:on 3:on 4:on 5:on 6:off # 啟動MySQL 服務 [root@localhost mysql]#service mysqld start Starting mysqld (via systemctl):                           [  OK  ]
  • 如果我們在第六步沒有指定日志文件或者指定了日志文件,但是忘記修改權限的話,這一步都會出錯的,不過出錯了也不要著急,根據提示信息一點一點來修改就可以了。

  • 我們在這一步中將mysql的服務腳本復制到了/etc/rc.d/init.d/路徑下,這是因為CentOS 7兼容了CentOS 6 的服務模式。當然也可以按照CentOS 7的服務管理方式來進行,配置文件位于/usr/lib/systemd/system 路徑下。

八 配置客戶端環(huán)境變量

完成了前面的幾步操作,我們就已經完成了大部分的工作,此時服務已經啟動,我們可以使用ss 工具來查看3306端口是否已經開啟。  但是此時,我們使用mysql 命令通過客戶端去訪問mysql數據庫的話,會提示找不到mysql 命令,所以我們要指定一下,mysql 命令的環(huán)境變量。  前面我們說過,mysql解壓之后一些二進制的可執(zhí)行文件位于 解壓后目錄的/bin文件夾下,所以我們將這個路徑添加到環(huán)境變量中。

# 單獨指定一個路徑來修改環(huán)境變量,這樣便于管理。 [root@localhost mysql]#cat /etc/profile.d/mysql.sh export PATH=/usr/local/mysql/bin:$PATH # 執(zhí)行一下這個腳本,使環(huán)境變量生效 [root@localhost mysql]#. /etc/profile.d/mysql.sh

八 安全初始化

完成了第七步之后,我們已經能夠順利的訪問到數據了,甚至匿名訪問也是的??墒谴藭r的數據庫還是不足夠安全的,并不能投入到實際的生產中使用,所以我們需要對數據庫進行安全初始化。
我們根據安裝文件中提供的安全初始化腳本,來進行數據庫的安全初始化,詳細查看下面的這張動圖。

CentOS7安裝通用二進制格式MariaDB 10.2.8

下面對圖中修改過的幾項進行一個詳細的解釋

# 是否重新設置root用戶的密碼 Set root password? [Y/n] y # 是否刪除匿名用戶 Remove anonymous users? [Y/n] y # 是否不允許root用戶遠程登陸 Disallow root login remotely? [Y/n] n # 是否刪除測試數據庫 Remove test database and access to it? [Y/n] y # 重新加載可用的數據庫表 Reload privilege tables now? [Y/n] y

以上,我們就詳細的介紹了在CentOS 7 中安裝MariaDB 10.2.8 版本的全部過程。并且我們只是進行了簡單的配置,在實際生產中,會經常使用到MariaDB,所以將整個安裝過程寫成一個腳本,或許也是一個不錯的選擇。若有問題,歡迎留言。

個人博客地址:http://www.pojun.tech/ 歡迎訪問

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

分享名稱:CentOS7安裝通用二進制格式MariaDB10.2.8-創(chuàng)新互聯(lián)
網頁鏈接:http://muchs.cn/article10/ddpogo.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供云服務器、用戶體驗搜索引擎優(yōu)化、App設計網站排名、電子商務

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都做網站