簡體   English   中英

連接到MySQL數據庫

[英]Connecting to MySQL db

當我嘗試使用32位和64位mysql-connector-odbc-5.3.2和connectionstring從Windows 7連接時:

Provider=MSDASQL;Driver={MySQL ODBC 5.3 Driver};Server=192.168.1.13;Port=3306;Database=mydb;Uid=root;Pwd=****;

我懂了

[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified

對於5.2.6版也是如此。 將提供程序降級到5.1后,我得到:

[MySQL][ODBC 5.1 Driver]Can't connect to MySQL server on '192.168.1.13' (10060)

這更令人鼓舞,因為它至少已經認可了提供者。

我嘗試添加防火牆規則以允許到端口3306的出站連接。我嘗試禁用本地防火牆。 我檢查了服務器是否正在偵聽端口3306並驗證了IP地址。 (tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN)我進一步驗證了我可以訪問服務器並且MySQL正在運行。

當我嘗試使用IP地址從ssh終端連接到服務器本身時:mysql -u root -h 192.168.1.13 -D whiskeywheel -p

系統提示我輸入密碼,然后輸入:ERROR 2003(HY000):無法連接到“ 192.168.1.13”上的MySQL服務器(111)

我已經將主機/用戶添加到mysql數據庫的用戶表中,然后重新啟動了MySQL。 我已將數據庫上的“ ALL”授予所有主機('%')處的用戶,並且已將對端口3306的訪問權限明確添加到ubuntu防火牆:iptables -A INPUT -p tcp --dport 3306 -j ACCEPT

我當然會在部署之前限制訪問,但是在開發數據庫時,我需要能夠以有意義的形式與數據庫進行交互。 我很高興重新安裝所有各種組件,然后重新開始,因為這在項目中已經足夠早了,但理想情況下,我想知道自己配置錯誤或出了什么問題。

默認情況下,mysql服務器僅綁定到服務器(127.0.0.1)上的回送地址。 您必須編輯服務器的my.cnf文件並重新啟動mysql服務器。

還要注意,指定localhost被mysql服務器認為是特殊的。 它不會像人們期望的那樣調用127.0.0.1。

有關如何綁定到您的外部ipaddress的更多信息,請參見:

http://www.cyberciti.biz/faq/unix-linux-mysqld-server-bind-to-more-than-one-ip-address/

暫無
暫無

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

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