sql >> Database teknologi >  >> RDS >> Mysql

MySQL-forbindelse over SSH-tunnel

Der er tre problemer her.

1 - Glem alt om SSH-tunnelen for nu

Du kan ikke binde MySQL til mere end én specifik IP. Den første bind-address klausul tilsidesættes (derfor ignoreres) af den anden. Din server lytter kun til 99.99.99.99 .

Grunden til, at du kan oprette forbindelse til -h localhost men ikke med -h 127.0.0.1 er, at i den første form forbinder du faktisk ikke via TCP/IP, men via en lokal socket.

Kig i din my.cnf for en socket klausul.

Fjern én overflødig bind-address klausul. Du vil måske bruge bind-address=0.0.0.0 , som instruerer MySQL-dæmonen til at lytte til alle netværksgrænseflader.

2 - Lad os konfigurere din SSH-tunnel

Årsagen til din fejl ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 0 er ikke indlysende for mig. Jeg mistanker SSH-tunnel etableres faktisk kun, når den modtager en forbindelsesanmodning (i dit tilfælde, når du kører mysql klient). Da din server ikke lytter til 127.0.0.1 (se forrige afsnit), kan SSH-tunnelen ikke etableres, forbindelsen mislykkes, og din klient fortolker det som en netværksfejl.

3 - Hvorfor mysql -v -h localhost -P 9989 -u user userdb -p mislykkes

Send venligst output fra

[redigér:har lige tilføjet ...OR host LIKE 'localhost' nedenfor, da dette kan være relevant til fejlfindingsformål]

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

(erstat 'user' , efter LIKE klausul, med det faktiske brugernavn, hvis det er nødvendigt)

MySQL adgangskontrol kontrollerer både brugernavn/adgangskode (user ) og oprindelsen af ​​forbindelsen (host ) for at identificere en bruger. Du har sandsynligvis ikke oprettet en bruger 'user'@'localhost' .

N.B.:da mysql.com ikke kan nås fra min placering på nuværende tidspunkt, kan jeg ikke linke til de relevante manualsider.



  1. MS Access:Fordele og ulemper

  2. Mysql-transaktion:commit og rollback

  3. Primær nøglesortering

  4. hvad er brugen af ​​pool-indstillingen i database.yml