0

リモートMysqlサーバーがあり、すべての権限をリモートで取得しています。これは、ローカル コンピューターからリモートでログインした後の「show grants」の出力です。

+-------------------------------------------------------------------------------------------------------------+
| Grants for user@%                                                                                            |
+-------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'mysqluser'@'%' IDENTIFIED BY PASSWORD '*B25E737EE2274D7343BF9DCDF6CAF8DB2EAC17E1' |
+-------------------------------------------------------------------------------------------------------------+

ただし、このサーバーをローカルのレール環境で使用しようとすると、次のように表示されます。

/home/myuser/.rvm/gems/ruby-1.9.3-p429@my_project/gems/mysql2-0.3.11/lib/mysql2/client.rb:44:in connect': Access denied for user 'mysqluser'@'localhost' (using password: YES) (Mysql2::Error) from /home/myuser/.rvm/gems/ruby-1.9.3-p429@my_project/gems/mysql2-0.3.11/lib/mysql2/client.rb:44:ininitialize'

ここに私のdatabase.ymlがあります:

development:
  adapter: mysql2
  encoding: utf8
  reconnect: true
  username: mysqluser
  password: password
  hostname: 192.10.23.114
  database: db_name
  pool: 5
  timeout: 5000

私が理解していないのは、実際にリモートアクセスを使用していたときにMysqlがユーザーが「localhost」から来たと考える理由です? これについて何か考えがありますか?どうもありがとう。

4

2 に答える 2

2

の使い方hostnameが間違っています。

それは読むべきです:

host: 192.10.23.114

于 2013-06-17T04:54:17.047 に答える
0

トゥー、

さらに、mysql2 gem がインストールされていることを確認する必要があります。構成の詳細については、http: //guides.rubyonrails.org/getting_started.html#configuring-a-databaseを確認してください。

于 2013-06-17T05:48:43.947 に答える