天天看點

MariaDB資料庫的安裝、性能優化和安全MariaDB資料庫的安裝、性能優化和安全

版權聲明:本文為部落客chszs的原創文章,未經部落客允許不得轉載。 https://blog.csdn.net/chszs/article/details/51627370

MariaDB資料庫的安裝、性能優化和安全

作者:chszs,未經部落客允許不得轉載。經許可的轉載需注明作者和部落格首頁: http://blog.csdn.net/chszs

資料庫伺服器是絕大多數應用程式的關鍵組成部分。如果沒有存儲、檢索、更新和删除資料的能力,那麼Web應用和桌面應用的實用性和使用範圍會變得非常有限。

此外,知道如何安裝、管理和配置資料庫伺服器,使得資料庫的運作達到預期設定,是每個系統管理者必備技能。

在這篇文章中,主要講述了MariaDB資料庫的安裝、性能優化和安全。

一、安裝MariaDB

在CentOS 7.x系統中,MariaDB正式取代了MySQL的地位,預置到系統倉庫中。這一點在Ubuntu和openSUSE等系統上也是如此。

要安裝MariaDB,執行指令:

--------------- On CentOS/RHEL 7 and Fedora 23 --------------- 
# yum update && yum install mariadb mariadb-server # CentOS 

--------------- On Debian and Ubuntu --------------- 
$ sudo aptitude update && sudo aptitude install mariadb-client mariadb-server 

--------------- On openSUSE --------------- 
# zypper update && zypper install mariadb mariadb-tools # openSUSE
           

一但MariaDB軟體包完成了安裝,需要確定資料庫服務啟動運作,并且能開機自動啟動。在CentOS和openSUSE系統都需要手段執行指令才能實作上述需求,而Ubuntu的安裝過程可以自動完成這一點。

--------------- On CentOS/RHEL 7 and Fedora 23 --------------- 
# systemctl start mariadb && systemctl enable mariadb 

--------------- On openSUSE --------------- 
# systemctl start mysql && systemctl enable mysql
           

二、MariaDB的安全加強

完成以上操作後,是時候對MariaDB的安全進行加強了。需要運作mysql_secure_installation腳本。此腳本可以實作:

  • 為資料庫root使用者設定或重置密碼
  • 禁止匿名使用者登入
  • 禁止root使用者的遠端通路,隻允許本地localhost通路
  • 删除test資料庫(任何人都可以通路的資料庫)
  • 激活以上1~4選項

三、配置MariaDB伺服器

MariaDB伺服器預設的配置檔案在這裡,注意下面給定的順序:

/etc/mysql/my.cnf    /etc/my.cnf    ~/.my.cnf
           

在大多數情況下,隻存在/etc/my.cnf配置檔案。對于Linux伺服器上的使用者,可以使用~/.my.cnf配置檔案來覆寫這個配置檔案。

要注意,在my.cnf配置檔案中,每一個節的内容都是由方括号分隔的。

伺服器的系統配置在[mysqld]節中給出,下表中的前兩行就是其中的内容,餘下的都是可選項,可以按自己的需求修改其預設值。

在CentOS系統中,還需要告訴SELinux允許MariaDB的監聽端口穿透防火牆,然後重新開機服務。

# yum install policycoreutils-python
# semanage port -a -t mysqld_port_t -p tcp 20500
           

四、MariaDB性能優化

最簡單、最友善的MariaDB性能優化技巧,就是使用mysqltuner工具。mysqltuner其實是一個腳本,它可以掃描資料庫伺服器,并提出性能和穩定性方面的改進建議。

要安裝mysqltuner:

# wget https://github.com/major/MySQLTuner-perl/tarball/master
# tar xzf master
           

然後進入mysqltuner的解壓目錄:

# cd major-MySQLTuner-perl-7dabf27
           

運作mysqltuner:

# ./mysqltuner.pl
           

mysqltuner輸出的報告大緻如下:

結果報告建議把query_cache_type設定為0,0表示禁用,1表示啟用。

那麼為什麼mysqltuner會建議停用query_cache_type呢?原因是,查詢緩存适用于高讀/低寫的情況,而我們才安裝了MariaDB,顯然還不具備這種情況。

注意:使用mysqltuner進行調優,并非一次性的工作,每隔一段時間就應該檢查一次,做一些調整。