
我在 Debian 9 vps 上有 MySQL 8,我的問題是我可以使用我選擇的任何連接埠從 php Adminer (web) 連接到伺服器:
localhost:3307、33650、任意連接埠。
php 管理員顯示 - MySQL » localhost:33899。我可以管理資料庫,但是這個實例來自3306,這是預設的。為什麼會發生這樣的事情呢?我錯過了什麼嗎?這個問題是由於 DBA 上的另一個問題而誕生的 -https://dba.stackexchange.com/questions/296108/mysql-8-insert-values-into-selected-columns-only
在這種情況下,沒有其他 MySQL 實例正在運行。即使我運行它們,我也只能從命令列連接,而不能從管理員網路或遊戲腳本端連接。
答案1
看來我大概找到答案了。
這是因為如果你指定「-h localhost」 - 它會將你連接到MySQL套接字,並且--port將被忽略(不會使用TCP/IP,因此--port選項沒有意義)。
要連接到不同的端口,只需使用不是“localhost”而是 127.0.0.1 的位址:
致謝:https://lxadm.com/MySQL:_connecting_to_ different_ports_on_localhost
所以,我必須照顧 127.0.0.1:我的連接埠。可能需要綁定等。
所以,現在終於可以工作了,我學到的教訓是 localhost 與 127.0.0.1 不同。我剛剛對 *.cnf 進行了編輯:
bind-address=127.0.0.1