簡體   English   中英

我可以使用 php myadmin 登錄到我的 sql 服務器,但無法使用 php 登錄

[英]I can log into my sql server using php myadmin, but cant login using php

我有一個帶有用戶名和密碼的數據庫。 用戶名是 zerk2。 我創建了這個用戶並授予它人類已知的所有權限。 我可以使用我的管理面板 php 物理登錄到服務器,並且每次都能正常工作。 但是,當我嘗試使用 php 或 node.js 登錄時,它告訴我它無法連接並給我以下錯誤:

 NODE JS Error: Error: connect ECONNREFUSED 127.0.0.1:3306 at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1054:14) -------------------- at Protocol._enqueue (/rbd/pnpm-volume/2b16f76e-5470-449f-9885-fd3654098407/node_modules/mysql/lib/protocol/Protocol.js:144:48) at Protocol.handshake (/rbd/pnpm-volume/2b16f76e-5470-449f-9885-fd3654098407/node_modules/mysql/lib/protocol/Protocol.js:51:23) at Connection.connect (/rbd/pnpm-volume/2b16f76e-5470-449f-9885-fd3654098407/node_modules/mysql/lib/Connection.js:116:18) at Object.<anonymous> (/app/connection.js:10:5) at Module._compile (internal/modules/cjs/loader.js:759:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:770:10) at Module.load (internal/modules/cjs/loader.js:628:32) at Function.Module._load (internal/modules/cjs/loader.js:555:12) at Function.Module.runMain (internal/modules/cjs/loader.js:826:10) at internal/main/run_main_module.js:17:11 NODE JS Code: const mysql = require('mysql'); const con = mysql.createConnection({ host: "localhost", user: "zerk2", password: "***", database: "***", }); con.connect(function(err) { if (err) throw err; console.log("Connected;"); });
 PHP Error: Warning: mysqli_connect(): (HY000/1045): ProxySQL Error: Access denied for user 'zerk2'@'2a02:4780:bad:f00d::7' (using password: YES) in /storage/ssd2/616/14109616/public_html/index.php on line 2 Connection Failed: PHP Code. // Note. The stars are there for privacy. However I am certain i have the correct order, Host, username, password? db name <,php $con = mysqli_connect("localhost", "zerk2", "***"; "***") or die("Connection Failed;")? echo "Connection success!"; ?>

看起來問題是主機'zerk2'@'2a02:4780:bad:f00d::7' 您可能在同一台機器上,但您的 php 和節點從不同的服務器運行,看起來您的節點是通過代理運行的。 php 可以從 apache 和 nodejs 從另一個 http 服務器運行。 不知道你是如何設置服務器的。 要解決此問題,您必須修改或創建一個 mysql 用戶,並將主機設置為%以允許從任何主機訪問。

更新:

它無法連接到 mysql 服務器Error: connect ECONNREFUSED 127.0.0.1:3306 嘗試使用服務器的 ip 地址或域作為主機而不是localhost ,看看是否適合您。 PHP 看起來它已連接,但用戶無權訪問可能是密碼,或者用戶無法從主機2a02:4780:bad:f00d::7訪問它,這就是為什么您需要使用主機%的 mysql 用戶的原因。 另請注意,如果您有兩個具有相同名稱的用戶並且一個主機不是% ,它將不起作用。

我覺得自己像個白痴。 但它不起作用的原因顯然是因為。 web 瀏覽器 FireFox 有一種內置的 VPN。 它將您的所有請求流量路由到。 如果有人收到此錯誤,請禁用您可能在計算機或瀏覽器上啟用的代理或 VPN。

暫無
暫無

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

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