欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在linux服務器上配置mysql并開放3306端口的操作步驟

 更新時間:2022年09月27日 09:56:38   作者:litble  
這篇文章主要介紹了在linux服務器上配置mysql并開放3306端口,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

在做大作業(yè),數(shù)據(jù)庫零基礎,折騰了一天才搞成功,特此記錄一下踩過的坑。希望能幫到其他同學吧……
有不對歡迎指出,謝謝啦!

安裝mysql

首先

sudo apt update
sudo apt install mysql-server -y

嗯,安裝完了。
然后輸入

sudo systemctl status mysql.service

如果看到:

在這里插入圖片描述

尤其是這個綠綠的active,就表示已經(jīng)啟動了。
如果沒有active的話,就手動輸入命令:

sudo systemctl start mysql.service

修改密碼

進入mysql

mysql -u root -p

其中-u后面是用戶名,-p后面理論上是直接輸入密碼,但貌似mysql會建議你不要這么干。如果出現(xiàn)讓你輸密碼的提示的話,直接回車即可,初始密碼為空。

在這里插入圖片描述

看到這樣的界面就進入mysql的操作了。如果要退出,輸入quit并回車即可。
然后在mysql中輸入:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password by '123456';

即可修改密碼。123456是你準備改的密碼(它可能會阻止你改成這么弱的密碼,那就換個強點的密碼吧)

遠程編輯數(shù)據(jù)庫

我的服務器沒有圖形化界面,所以為了方便起見,我用了mysql workbench來遠程操作數(shù)據(jù)庫。

官網(wǎng)下載并安裝,一路next就行沒什么難的。

打開mysql workbench,點擊加號。

在這里插入圖片描述

然后填好信息,記得第二欄選Standard TCP/IP over SSH。

在這里插入圖片描述

先點底下的Test Connection,如果彈出了OK的界面的話,再點最右側的OK按鈕
再點最右側的OK按鈕,最右側的OK按鈕,最右側的OK按鈕。重要的事說三遍。Test Connection只是檢查是否能連上數(shù)據(jù)庫的,點OK才能保存設置。
然后主界面的“Mysql Connection”應該就多了一個格子,雙擊即可進入遠程數(shù)據(jù)庫的編輯界面。

開放端口

本地mybatis沒過ssh,連不上數(shù)據(jù)庫,因此我們需要開放端口。
數(shù)據(jù)庫的默認端口號是3306,不用改。
終端依次輸入以下指令即可開放端口:

sudo apt-get install iptables
sudo iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
sudo iptables-save

然后可以安裝一個netcat測試一下是否成功:

sudo apt-get install netcat
nc -zv 127.0.0.1 3306

以下是成功和失敗的輸出結果:

在這里插入圖片描述

好,重點來了,你的本地機器想連服務器的數(shù)據(jù)庫,當然是不能用127.0.0.1的,然而如果你nc -zv輸入服務器ip地址,會發(fā)現(xiàn)Connection refused。
輸入

netstat -an|grep 3306

紅色的那一行,如果顯示的是:::3306,表示可以對外開放。如果顯示的是127.0.0.1:3306,表示只對本地開放。如果你是后者,那么跟著我繼續(xù)應該就能成功解決了,否則……呃……再排排錯找找教程?

在這里插入圖片描述

首先我們需要編輯一個文件:

cd /etc/mysql/mysql.conf.d/
vim mysqld.cnf

打開后長這樣,如果你紅框里的內容沒有注釋掉,將它注釋掉。另外,如果你發(fā)現(xiàn)你的數(shù)據(jù)庫端口不是3306,把prot=3306那句的注釋去掉。

在這里插入圖片描述

:wq保存并退出后,終端輸入

service mysql restart

重啟mysql,然后

netstat -an|grep 3306
nc -zv 服務器ip地址 3306

檢查一下,都和上文說的結果一樣,就表明3306端口開放成功。

開放數(shù)據(jù)庫權限

接下來要對外開放數(shù)據(jù)庫權限。
首先還是

mysql -u root -p

進mysql
然后輸入:

update user set host='%' where user='root';

如果報錯說沒選擇數(shù)據(jù)庫的話,可以用:

show databases;

命令查看一下有哪些數(shù)據(jù)庫,一般來說

use mysql;

(不是你自己建的要開放的數(shù)據(jù)庫)
然后再輸入上面的指令就可以了。
最后

flush privileges;

刷新,再quit退出。
最后終端輸入:

sudo service mysql restart

重啟一下數(shù)據(jù)庫。
現(xiàn)在你的遠程連接大概沒問題了。
另外我的另一踩坑是mysql-connector-java的版本號問題,要和你的服務器mysql版本對應不然可能連不上。你登入mysql的時候會出一大段文字,里面就有版本號。不知道有沒有人會犯和我一樣的錯……

后記

對著防火墻折騰了個把小時才發(fā)現(xiàn)連不上是mysql配置文件的問題,端口只開放給本地了,枯了。

到此這篇關于在linux服務器上配置mysql并開放3306端口的文章就介紹到這了,更多相關linux開放3306端口內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論