簡體   English   中英

通過公共IP地址連接到MySQL數據庫?

[英]Connect to MySQL database over public ip address?

我為此使用Xampp,並能夠使用主機靜態IP 192.168.0.x將其從手機連接到主機,但是當我嘗試通過公共IP地址連接到數據庫時,它失敗了。

http://192.168.0.x/testdatabase/可以,但是http://xx.xx.xxx.xx/testdatabase/ (我的公共IP)不起作用,我已在端口3306上啟用了到主機靜態IP的端口轉發但是它仍然失敗,我什至嘗試在IP末尾添加:3306

如何通過我的公共IP地址連接到服務器?

我可能會使用SSH隧道。

使用SSH隧道連接到服務器,然后使用本地客戶端,在為MySQL設置隧道的任何端口上連接到localhost。

在Windows上,您可以使用膩子來做到這一點。 或在MacOS / Linux上使用ssh。

關於如何設置SSH隧道,我不會做完整的介紹,但是您會在網絡上找到大量的資源。

問題不是PHP,問題是您沒有指定用戶從另一個IP連接的權限。

您在權限管理中授予用戶特定的權限。 假設,如果要以用戶“ foo”的身份從10.10.10.10到您的數據庫,則必須允許它:

GRANT ALL ON mydatabase.* TO bar@'10.10.10.10' IDENTIFIED BY 'randompassword';

否則,MySQL將阻止對您的數據庫的訪問。

您還可以允許每個IP:

GRANT ALL ON mydatabase.* TO bar@* IDENTIFIED BY 'randompassword';

旁注:不允許從內部網絡(甚至本地主機)以外的位置進行訪問是不好的。 將您的服務器暴露給世界不會有任何好處。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM