1. 程式人生 > 實用技巧 >centos安裝mariadb

centos安裝mariadb

centos安裝mariadb

前提是你的linux系統中沒有安裝mariadb

以下均為在root環境下操作

1. 安裝mariadb

yum install mariadb-server

安裝完成之後我們並不能使用mysql命令來啟動資料, 原因是我們的資料庫服務還有有開啟

2. 開啟服務

執行下面的開啟命令即可 systemctl start mariadb

其他命令

  1. 啟動資料庫systemctl start mariadb
  2. 重啟資料庫systemctl restart mariadb
  3. 關閉資料庫systemctl stop mariadb

還有另一種方式

  1. 啟動資料庫 service start mariadb
  2. 重啟資料庫 service restart mariadb
  3. 關閉資料庫 service stop mariadb

3. 初始化資料庫

上面開啟服務後, 預設情況下可能沒有密碼, 這時候我們需要初始化資料庫

終端輸入: mysql_secure_installation

首先是設定密碼,會提示先輸入密碼
Enter current password for root (enter for none):<–初次執行直接回車
設定密碼
Set root password? [Y/n] <– 是否設定root使用者密碼,輸入y並回車或直接回車
New password: <– 設定root使用者的密碼
Re-enter new password: <– 再輸入一次你設定的密碼
其他配置
Remove anonymous users? [Y/n] <– 是否刪除匿名使用者,回車
Disallow root login remotely? [Y/n] <–是否禁止root遠端登入,回車,(應該不生效)
Remove test database and access to it? [Y/n] <– 是否刪除test資料庫,回車
Reload privilege tables now? [Y/n] <– 是否重新載入許可權表,回車
初始化MariaDB完成,接下來測試登入
mysql -uroot -p

一般設定完密碼之後, 後面一路選Y即可

4. 設定遠端登入許可權

輸入: mysql -uroot -p密碼進入資料庫

選擇mysql資料庫: use mysql

查詢許可權: select host,user from user where user=‘root’;

發現root賬戶只能在本地訪問, 如果需要任意ip訪問, 我們需要設定host為%

執行: update user set host='%' where host="localhost";

再次查詢: select host,user from user where user='root'; 如果localhost變為%說明就成功了

好的, 進行最後一步, 重新整理許可權: flush privileges; 然後使用exitquit或ctrl+c退出資料庫

5. 配置linux防火牆

如果經過上述的步驟, 你仍無法遠端連線導資料, 那麼可能是防火牆並沒有開方3306埠

5.1 解決方法1: 關閉防火牆

永久關閉防火牆systemctl disable firewalld.service

或者這樣: systemctl stop firewalld.service

如果需要永久開啟防火牆, 請輸入以下指令

永久開啟systemctl enable firewalld.service

或者:systemctl start firewalld.service

然後我們可以檢查防火牆狀態: firewall-cmd --state

5.2 解決方法2: 開放埠

如果完全的關閉防火牆, 會使我們的計算機不安全,

所以我們不需要把牆完全推到, 只需要挖一個洞即可(即需要什麼埠就開放什麼埠)

命令如下:開放3306埠 firewall-cmd --zone=public --add-port=3306/tcp --permanent

命令解析:

firewall-cmd --zone=public --add-port=3306/tcp --permanent

命令含義:
    –zone #作用域
    –add-port=80/tcp #新增埠,格式為:埠/通訊協議
    –permanent #永久生效,沒有此引數重啟後失效

到現如果上面沒有出現意外, 就大功告成了