[資料庫] 安裝MariaDB取代MySQL在CentOS 6.x上



MariaDB是一個非常優質、自由的免費資料庫,MySQL被知名大廠『甲骨文』收購,許多人都猜測MySQL會慢慢變成需要付費才能更新或使用的資料庫系統,但MariaDB保證永遠公開源碼、永遠不收費,Google也在不久前將數千台的MySQL資料庫伺服器更改為MariaDB,MariaDB取代MySQL非常簡單,只需要備份之前的資料庫,安裝MariaDB後恢復備份即可,就算您只有一台伺服器在做更換,也能掌握好停機時間,不會停機太久,且MariaDB經過測試證實,在大量查詢下,效能是比MySQL好的許多,如果您對MariaDB有信心的話,趕快將MySQL更換成MariaDB,一起支持MariaDB吧!


MariaDB 小資訊
官方網站 : https://mariadb.org/



一、備份先前資料庫
這篇文章有完整資料庫備份還原指令,請先備份先前資料庫後在做以下步驟。

文章網址 : http://www.orztw.com/2014/02/mysql-backup.html



二、移除 MySQL 伺服器
先停止MySQL運作。

service mysqld stop
1
service mysqld stop
移除所有MySQL伺服器&相關物件。

yum remove mysql* mysql-server mysql-devel mysql-libs -y
1
yum remove mysql* mysql-server mysql-devel mysql-libs -y


三、準備安裝 MariaDB
安裝MariaDB前,必須先新增MariaDB的知識庫,讓系統使用。

vi /etc/yum.repos.d/mariadb.repo
1
vi /etc/yum.repos.d/mariadb.repo
32位元系統

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/5.5/centos6-x86
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
1
2
3
4
5
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/5.5/centos6-x86
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
64位元系統

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/5.5/centos6-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
1
2
3
4
5
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/5.5/centos6-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1


然後更新CentOS。

yum update -y
1
yum update -y


開始安裝 MariaDB
開始安裝MariaDB伺服器及用戶端(登入、備份用)。

yum install MariaDB-devel MariaDB-client MariaDB-server -y
1
yum install MariaDB-devel MariaDB-client MariaDB-server -y
安裝好後啟動MariaDB,MariaDB叫做【mysql】跟MySQL的【mysqld】不一樣!

service mysql start
1
service mysql start
設定開機啟動MariaDB。

chkconfig mysql on
1
chkconfig mysql on


初始化 MariaDB
執行這個初始化程式,過程跟MySQL一模一樣。

/usr/bin/mysql_secure_installation
1
/usr/bin/mysql_secure_installation
第一個問題,Enter current password for root (enter for none):。

請直接按下Enter,因為預設MariaDB沒有密碼。



第二個問題,Change the root password? [Y/n]。

是否更改root密碼,極度建議您設定root密碼,請輸入Y。



第三個問題,Remove anonymous users? [Y/n]。

是否移除匿名帳號,請務必移除匿名帳號,否則別人隨便就可以進入您的資料庫了!



第四個問題,Disallow root login remotely? [Y/n]。

是否移除遠端root登入權限,視需求設定,若要允許root遠端登入,還需要使用另一個指令新增權限,後面會說明!



第五個問題,Remove test database and access to it? [Y/n]。

是否移除測試資料庫跟使用者,留著也沒用!移除請輸入Y。



第六個問題,Reload privilege tables now? [Y/n]。

是否刷新權限表,輸入Y完成所有初始化設定!



讓遠端可以存取root帳號
如果您要使用管理工具從自己的電腦管理MariaDB,必須開放遠端存取權限,所以來建立一個可以遠端存取的root帳號!



一、使用root帳號登入MariaDB,注意:以下步驟只能在MariaDB那台主機上操作。

mysql -u root -p
1
mysql -u root -p
二、執行下面那段指令後,所有遠端電腦都可以登入您的root帳號,若您是固定IP,也可以將指令中的【%】改成您的IP。

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '設定密碼' WITH GRANT OPTION;
1
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '設定密碼' WITH GRANT OPTION;


恢復先前資料庫
恢復資料庫請參考這篇文章,裡面有完整教學!

文章網址 : http://www.orztw.com/2014/02/mysql-backup.html



大功告成!
這樣就完成了MySQL更換成MariaDB,如果您的資料庫有很大量的查詢存取,就會發現真的比MySQL快許多,在備份及還原備份時也可以察覺到!