リモート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:in
initialize'
ここに私の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」から来たと考える理由です? これについて何か考えがありますか?どうもありがとう。