自從 MySQL 被 Oracle 收購之後,社區就一直擔心 MySQL 可能會被閉源或者一些其他的原因導致 MySQL 的支援出現問題。所以現在好多發行版本預設的資料庫都從 MySQL 轉移到了 Mariadb。而且社區也開始大力支援 Mariadb,再加上 Mariadb 的使用和 API 和 MySQL 完全一樣,所以這裡選擇使用 Mariadb 而不是 MySQL。
MariaDB 資料庫管理系統是 MySQL 的一個分支,主要由開源社區在維護,採用 GPL 授權許可。開發這個分支的原因之一是:甲骨文公司收購了 MySQL 後,有將 MySQL 閉源的潛在風險,因此社區採用分支的方式來避開這個風險。
MariaDB 的目的是完全相容 MySQL,包括 API 和命令列,使之能輕鬆成為 MySQL 的代替品。在儲存引擎方面,10.0.9 版起使用 XtraDB(名稱代號為 Aria)來代替 MySQL 的 InnoDB。
MariaDB 由 MySQL 的創始人麥克爾 · 維德紐斯主導開發,他早前曾以 10 億美元的價格,將自己建立的公司 MySQL AB 賣給了 SUN,此後,隨著 SUN 被甲骨文收購,MySQL 的所有權也落入 Oracle 的手中。MariaDB 名稱來自麥克爾 · 維德紐斯的女兒瑪麗亞(英語:Maria)的名字。——————————維基百科
0X00 安裝環境
CentOS 7.x
0X01 查看並安裝 Mariadb
yum list mariadb* 可以列出很多Mariadb相關的軟體包
我們選擇安裝服務端
yum install mariadb-server
再安裝用戶端(使用MySQL用戶端也完全沒問題)
yum install mariadb
0X02 開啟 Mariadb 的服務並配置 root 密碼
啟動 Mariadb 服務。在 CentOS7.x 中推薦使用 systemctl 來佈建服務的啟動方式
systemctl start mariadb.service
或者
/etc/init.d/mariadb start
然後配置 root 密碼(你沒看錯,就是 mysqladmin)
/usr/bin/mysqladmin -u root password '123456'
現在可以用 root 使用者和'123456'密碼登陸自己的本機資料庫了
0X03 開啟遠程接入
作為資料庫服務,肯定要支援遠端存取的是吧,總不能每次訪問自己的資料庫還要跑到機房甚至阿里雲資料中心吧
首先關閉防火牆(最好就是開放資料庫連接埠(預設 3306))
setenforce 0
或者
systemctl stop firewalld.service
Plan A:
允許 123.123.123.123 通過使用密碼為 “123456” 的“root”使用者登陸
grant all PRIVILEGES on discuz.* to root@’123.123.123.123’ identified by ‘123456’;
Plan B:
myuser 使用 mypassword 從任何主機串連到 mysql 伺服器的話。
mysql> GRANT ALL PRIVILEGES ON . TO ‘myuser’@’%’ IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;
允許使用者 myuser 從 ip 為 192.168.1.3 的主機串連到 mysql 伺服器,並使用 mypassword 作為密碼
mysql> GRANT ALL PRIVILEGES ON . TO ‘myuser’@’192.168.1.3’ IDENTIFIED BY ‘mypassword’ WITH GRANT OPTION;
0X03 遠端連線
mysql -h 122.122.122.122 -u root -p
登陸成功了 -_-