實現用戶端串連Mysql資料庫伺服器

來源:互聯網
上載者:User

標籤:

以前學習mysql的時候,都是部署在本機,這樣不存在用戶端主機與伺服器主機串連的問題,都是直接用localhost登入就行。

今天因項目需要,我們把mysql部署在伺服器上,然後用戶端裝了client,這樣就遇到用戶端串連資料庫伺服器的問題。折騰了蠻久,發現即使是預設的root賬戶也沒能連上伺服器。把今天的解決過程記錄如下:

1、在伺服器上安裝好mysql server 後,在公司內網開通3306連接埠(mysql的預設連接埠);同時,伺服器也要支援外網的訪問,又增加外網連接埠的存取權限。最後,在用戶端主機,通過"telnet"命令,檢查3306連接埠已經可以通過用戶端主機串連了。

2、用戶端裝好mysql client,發現root使用者無法串連,也就是用戶端無法用workbench實現資料庫、使用者、資料表等的操作。這裡有兩個辦法,一個是直接先授權root使用者,可以在任何主機訪問,然後再建立資料庫、添加表等;另一種方法,是通過伺服器端mysql指令,添加新資料庫,新的使用者,然後賦予使用者所有主機的串連許可權,算是一步到位。

方法一: 將root使用者的許可權改成任何主機都能訪問:

在伺服器上,運行MySQL 5.7 Command Line Client,然後執行以下命令:

(1)use mysql;              進入mysql資料庫

(2)select host,user,password from user;  查詢資料庫的使用者資訊

(3)update user set host=‘%‘ where host=‘localhost‘;   將上表中root的訪問主機改為所有

(4)flush privileges;       重新整理許可權

(5)exit;  退出mysql

完成以上步驟,在用戶端主機workbench中,用root/password,即可登陸了。

 

方法二:直接通過mysql命令,建立資料庫,使用者資訊,以及用戶端主機存取權限設定。

在伺服器上,運行MySQL 5.7 Command Line Client,然後執行以下命令:

(1)show databases;    查看mysql伺服器上已經存在的資料庫。下面建立時,避免建重複的資料庫

(2)create database SZY;    建立資料庫“SZY”

(3)create user szy identified by "szy";   建立szy使用者,設定密碼szy

(4)grant all privileges on SZY.*to‘szy‘@‘%‘identified by ‘szy‘ with grant option;   給使用者賦予指定資料庫的所有許可權,並允許任何用戶端主機串連

(5)flush privileges;  重新整理上面使用權限設定

(6)exit;  退出mysql

完成以上命令,在用戶端嘗試串連,如下:

 

注意:關於sql命令直接在伺服器上的mysql命令管理器質性就行;每個sql命令都必須以“;”結束,否則報錯,或質性不成功。

實現用戶端串連Mysql資料庫伺服器

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.