Heroku db: push Sequel :: DatabaseConnectionError -> Mysql :: Ошибка: доступ запрещен для пользователя 'reg' @ 'localhost' (используется пароль: НЕТ) - PullRequest
3 голосов
/ 16 августа 2010

У меня проблема с использованием команды heroku db: push для переноса базы данных MySQL в heroku. Я попытался использовать ту же команду для другого приложения с базой данных sqlite3, и все прошло хорошо.

C: \ Users \ reg \ Team-Omni> heroku db: push

Loaded Taps v0.3.9 Автоопределенная локальная база данных: mysql: //127.0.0.1/omni_dev? Encoding = utf8 Предупреждение: данные в приложении Growing-Mist-42 будут перезаписаны и не подлежат восстановлению. , Вы уверены, что хотите продолжить? (Y / N)? у

Не удалось подключиться к базе данных:

Sequel :: DatabaseConnectionError -> Mysql :: Ошибка: доступ запрещен для пользователя 'reg' @ 'localhost '(используя пароль: НЕТ)

если я удаляю пароль для анонимной учетной записи mysql, ошибка изменится на

Sequel :: DatabaseConnectionError -> Mysql :: Ошибка: доступ пользователю '' @ 'localhost' запрещен, к базе данных 'omni_dev'

- дополнительная информация -

мой файл .gems:

рельсы -v 2.3.8

andre-geokit - версия 1.5.0 - источник http://gems.github.com

Ответы [ 2 ]

4 голосов
/ 16 августа 2010

Вы получаете эту ошибку, потому что вы не указываете пароль для подключения к локальной базе данных.Очевидно, имя пользователя настроено как 'reg' (возможно, в файле конфигурации MySQL).Это не имеет ничего общего с базой данных Heroku PostgreSQL, это проблема с подключением к вашей локальной базе данных MySQL (с именем omni_dev).

Попробуйте следующую строку подключения:

mysql://USERNAME:PASSWORD@127.0.0.1/omni_dev?encoding=utf8

длясоответствующие значения USERNAME и PASSWORD.

1 голос
/ 24 июля 2011

У меня тоже была эта проблема, но я передавал пароль. Мое локальное приложение работало нормально, но при использовании heroku db:push я получил ту же ошибку, что и redge.

Добавление порта в database.yml решило проблему. Итак, рабочий файл database.yml имеет следующие записи:

database: DATABASE   
username: USER   
password: PASSWORD   
adapter: mysql   
encoding: utf8   
socket:  /Applications/MAMP/tmp/mysql/mysql.sock   
port: 8889
...