3

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)?y

データベースへの接続に失敗しました:

Sequel :: DatabaseConnectionError-> Mysql :: Error:ユーザー'reg' @'localhost'のアクセスが拒否されました(パスワードを使用:NO)

mysql匿名アカウントのパスワードを削除すると、エラーは次のように変わります。

Sequel :: DatabaseConnectionError-> Mysql :: Error:データベース'omni_dev'へのユーザー''@'localhost'のアクセスが拒否されました

- 追加情報 -

私の.gemsファイル:

rails -v 2.3.8

andre-geokit --version 1.5.0 --source http://gems.github.com

4

2 に答える 2

4

ローカル データベース接続のパスワードを指定していないため、このエラーが発生しています。どうやら、ユーザー名は「reg」として構成されているようです (おそらく MySQL 構成ファイル内)。これは、Heroku PostgreSQL データベースとは関係ありません。ローカルの MySQL データベース (omni_dev という名前) への接続の問題です。

次の接続文字列を試してください。

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

USERNAME と PASSWORD の適切な値。

于 2010-08-16T03:27:38.523 に答える
1

私もこの問題を抱えていましたが、パスワードを渡していました。ローカル アプリは問題なく動作しましたが、使用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
于 2011-07-24T01:25:34.683 に答える