2014-09-23 11 views
6

Posso connettermi all'istanza RDS usando il comando mysql -h ... quindi so che non è un problema del gruppo di sicurezza.Come connettersi ad Amazon RDS usando go-sql-driver

Ho provato ad utilizzare:

sql.Open("mysql", "id:[email protected](your-amazonaws-uri.com:3306)/dbname") 

nel file Readme di go-sql-driver (https://github.com/go-sql-driver/mysql), ma non sembra funzionare.

Sto usando il mio nome utente sotto l'istanza RDS invece di id qui però.

Edit: L'errore restituito è: panic runtime error: invalid memory address or nil pointer deference [signal 0xb code=0x1 addr=0x20 pc=0x5b551e] goroutine 16 [running] runtime.panic(0x7d4fc0, 0xa6ca73)...database/sql.(*Rows).Next...

Funziona bene con il mio DB locale.

+0

deve restituire un errore, si prega di postare. – OneOfOne

risposta

0

Assicurarsi che l'errore effettivo non è correlato a un problema di importazione (come in issues 266)

Controllare (per essere sicuri che si sta utilizzando le versioni più recenti, come in this issue):

  • tua Go-MySQL-driver versione (o git SHA)
  • la versione Go (gestito go version nella console)

Se l'errore non è direttamente i n l'Open passo, ma quando si accede alle righe, check this comment out:

utilizzare un for loop (for rows.Next() { ... }) o qualcosa di simile:

if rows.Next() { 
    // whatever 
} else { 
    // catch error with rows.Err() 
} 
rows.Close() // <- don't forget this if you are not iterating over ALL results 
+0

Ho passato tutto quello che hai menzionato. Quello che sto facendo funziona perfettamente con la mia istanza MySQL locale. L'unica differenza tra le due istanze DB (local vs RDS) è la versione di MySQL. Pensi che sia una possibile causa? – John

+0

@UserNotDefined Sì, potrebbe essere una causa di problemi di comunicazione. – VonC

Problemi correlati