設定Ubuntu上的MySQL可以遠端訪問

2021-06-21 20:06:28 字數 1419 閱讀 2336

今天使用myeclipse的db explorer連線安裝在ubuntu8.04上的mysql上,始終提示錯誤,但是在ubuntu上訪問是沒有問題的。於是開始查詢原因:

1. 3306埠是不是沒有開啟?

使用nestat命令檢視3306埠狀態:

~# netstat -an | grep 3306

tcp        0      0 127.0.0.1:3306          0.0.0.0:*               listen

從結果可以看出3306埠只是在ip 127.0.0.1上監聽,所以拒絕了其他ip的訪問。

解決方法

:修改/etc/mysql/my.cnf檔案。開啟檔案,找到下面內容:

# instead of skip-networking the default is now to listen only on

# localhost which is more compatible and is not less secure.

bind-address  = 127.0.0.1

把上面這一行注釋掉或者把127.0.0.1換成合適的ip,建議注釋掉。

重新啟動後,重新使用netstat檢測:

~# netstat -an | grep 3306

tcp        0      0 0.0.0.0:3306            0.0.0.0:*               listen

2. 問題解決了嗎?

現在使用下面命令測試:

~# mysql -h 10.1.1.2 -u root -p

enter password:

error 1130 (00000): host 'b0324-desktop.local' is not allowed to connect to this mysql server

結果出乎意料,還是不行。

解決方法:原來還需要把使用者許可權分配各遠端使用者。

登入到mysql伺服器,使用grant命令分配許可權

mysql> grant all on database_name.* to user_name@'%' identified by 'user_password';

其中database_name、user_name和user_password根據實際情況設定。

完成後使用mysql命令連線,提示成功,為了確保正確可以再遠端登陸測試一下。

開啟mysql服務

sudo service mysql start
sudo service mysql stop

設定Ubuntu上的MySQL可以遠端訪問

今天使用myeclipse的db explorer連線安裝在ubuntu8.04上的mysql上,始終提示錯誤,但是在ubuntu上訪問是沒有問題的。於是開始查詢原因 1.3306埠是不是沒有開啟?使用nestat命令檢視3306埠狀態 netstat an grep 3306 tcp 0 0 12...

Ubuntu上的Vsftpd虛擬使用者設定

目標 首先我們假定你已經安裝了vsftpd,並在 home vsftpd 目錄下建立了以下3個子目錄 下面,我們要建3個虛擬使用者,密碼分別是使用者名稱後加 00 使得 建立虛擬使用者資料庫 建立文字檔案loguser.txt 格式如下 user id password 於是,我們 home log...

如何訪問ubuntu上的mysql

在ubuntu下mysql預設是只允許本地訪問的,如果你要其他機器也能遠端夠訪問mysql資料庫的話,需要設定一些東西 quote 修改 etc mysql my.cnf 注釋掉這句話 bind address 127.0.0.1 給某一台主機訪問資料庫的許可權 grant all privileg...