Un modo per verificarlo sarebbe connettersi a mysql sulla riga di comando dalla macchina in cui risiede Rails. Qualcosa come
mysql -u admin -ppwhere -h sql.domain.com
Probabilmente scoprirai che non puoi nemmeno connetterti in quel modo. Se è così, probabilmente hai un problema GRANT, che è probabilmente dovuto alla specifica dell'host sbagliato nel GRANT. Ad esempio, se il DB e i rail risiedono sulla stessa macchina, mysql potrebbe pensare che ti stai connettendo da 'localhost', invece del nome DNS del rails box (o viceversa).
All'inizio potresti semplicemente voler concedere all'utente amministratore l'accesso a tutto:
GRANT ALL ON *.* to 'admin'@'whereever_rails_lives' IDENTIFIED BY 'pwhere'
Il trucco spesso sta nel fare "whereever_rails_lives" nel modo giusto.