centos安裝mariadb
centos安裝mariadb
前提是你的linux系統中沒有安裝mariadb
以下均為在root環境下操作
1. 安裝mariadb
yum install mariadb-server
安裝完成之後我們並不能使用mysql命令來啟動資料, 原因是我們的資料庫服務還有有開啟
2. 開啟服務
執行下面的開啟命令即可 systemctl start mariadb
其他命令
- 啟動資料庫
systemctl start mariadb
- 重啟資料庫
systemctl restart mariadb
- 關閉資料庫
systemctl stop mariadb
還有另一種方式
- 啟動資料庫
service start mariadb
- 重啟資料庫
service restart mariadb
- 關閉資料庫
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;
然後使用exit
或quit
或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 #永久生效,沒有此引數重啟後失效
到現如果上面沒有出現意外, 就大功告成了