如何從ubuntu guest存取Windows主機中安裝的Mysql?

如何從ubuntu guest存取Windows主機中安裝的Mysql?

我在 Windows 7 主機上以訪客身分執行 Ubuntu。我正在使用 VMware Workstation 來運行 guest 虛擬機器。

我已經在主機上安裝了MySQL。我想從我的 Ubuntu 來賓存取此 MySQL 資料庫。基本上,我正在嘗試在我的 Ubuntu 客戶機中使用 Django 開發一個範例應用程序,為此我需要 MySQL。我的網路連線速度非常慢,因此我無法下載 Ubuntu 版的 MySQL,而且我的主機作業系統上沒有安裝 python。

如何從 Ubuntu 來賓連線到 MySQL 資料庫?

答案1

您需要查看表 mysql.user

通常,您可以執行此查詢以查看使用者名稱、主機位址和 MD5 加密的密碼。

SELECT user,host,password FROM mysql.user;

範例 #1:讓我們建立一個名為「myclient」的用戶,該用戶將從 IP 位址為「123.50.89.191」的 Ubuntu 伺服器連接到 mysql,並且可以完全存取和操作資料庫「mydata」中的所有內容。密碼為“permission”;

GRANT ALL PRIVILEGES on mydata.*
TO 'myclient'@'123.50.89.191'
IDENTIFIED BY 'permission';

範例 #2:讓我們建立一個名為「myreadclient」的用戶,該用戶將從 IP 位址為「123.50.89.191」的 Ubuntu 伺服器連接到 mysql,並且只能插入和選擇資料庫「mydata」中的所有內容。密碼將為「readpermission」;

GRANT INSERT,SELECT on mydata.*
TO 'myreadclient'@'123.50.89.191'
IDENTIFIED BY 'readpermission';

有關如何創建具有特定權限的用戶的更多信息,請關注此網址

試一試 !

警告

設定 MD5 格式的密碼總是比純文字密碼更好。

例子

mysql> SET @X=PASSWORD('permission');
Query OK, 0 rows affected (0.00 sec)

mysql> SELECT @X;
+-------------------------------------------+
| @X                                        |
+-------------------------------------------+
| *1D6447E2F5B7AFD0E27D8E6CCA53099BE980803C |
+-------------------------------------------+
1 row in set (0.00 sec)

現在,為第一個範例設定密碼,如下所示:

GRANT ALL PRIVILEGES on mydata.*
TO 'myclient'@'123.50.89.191'
IDENTIFIED BY PASSWORD @X;

這是使用 MD5 格式的第二個範例

mysql> SET @X=PASSWORD('readpermission');
Query OK, 0 rows affected (0.01 sec)

mysql> SELECT @X;
+-------------------------------------------+
| @X                                        |
+-------------------------------------------+
| *22DA1CEDDBA3B75FD193775AC69D9184105F0BE0 |
+-------------------------------------------+
1 row in set (0.00 sec)

GRANT INSERT,SELECT on mydata.*
TO 'myreadclient'@'123.50.89.191'
IDENTIFIED BY PASSWORD @X;

這樣做可以防止在二進位日誌或任何記錄 mysql 客戶端會話的檔案中記錄純文字密碼。

相關內容