sql >> Databasteknik >  >> RDS >> Mysql

MySQL-anslutning över SSH-tunnel

Det finns tre frågor här.

1 - Glöm SSH-tunneln tills vidare

Du kan inte binda MySQL till mer än en specifik IP. Den första bind-address sats åsidosätts (därför ignoreras) av den andra. Din server lyssnar bara på 99.99.99.99 .

Anledningen till att du kan ansluta till -h localhost men inte med -h 127.0.0.1 är att i den första formen ansluter du faktiskt inte via TCP/IP, utan genom ett lokalt uttag.

Titta i din my.cnf för en socket klausul.

Ta bort en redundant bind-address klausul. Du kanske vill använda bind-address=0.0.0.0 , som instruerar MySQL-demonen att lyssna på alla nätverksgränssnitt.

2 - Låt oss ställa in din SSH-tunnel

Anledningen till ditt fel ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 0 är inte självklart för mig. Jag misstänker SSH-tunneln upprättas faktiskt bara när den tar emot en anslutningsbegäran (i ditt fall när du kör mysql klient). Eftersom din server inte lyssnar på 127.0.0.1 (se föregående stycke) kan SSH-tunneln inte upprättas, anslutningen misslyckas och din klient tolkar det som ett nätverksfel.

3 - Varför mysql -v -h localhost -P 9989 -u user userdb -p misslyckas

Vänligen posta resultatet av

[redigera:har precis lagt till ...OR host LIKE 'localhost' nedan, eftersom detta kan vara relevant för felsökningsändamål]

mysql > SELECT user, host FROM mysql.user WHERE user LIKE 'user' OR host LIKE 'localhost';

(ersätt 'user' , efter LIKE klausul, med det faktiska användarnamnet om det behövs)

MySQL-åtkomstkontroll kontrollerar både användarnamn/lösenord (user ) och ursprunget för anslutningen (host ) för att identifiera en användare. Du skapade förmodligen inte en användare 'user'@'localhost' .

OBS:eftersom mysql.com inte kan nås från min plats just nu kan jag inte länka till relevanta manualsidor.



  1. Vad betyder Clustered and Non-Clustered index egentligen?

  2. Importera Excel-kalkylarkskolumner till SQL Server-databas

  3. hur laddar man ner blobbaserad fil från MySQL-databas i PHP?

  4. MariaDB BENCHMARK() Förklarat