mySQL: ERROR 1045: Access denied for user 'root'@'localhost' (using password: NO)

Hello, I am using InstantRails 2.0 on windows.
When building an app,I get this error when hit the browser(Action
ControllerException caught):

Access denied for user 'root'@'localhost' (using password: NO)

Hello, I am using InstantRails 2.0 on windows.
When building an app,I get this error when hit the browser(Action
ControllerException caught):

Access denied for user 'root'@'localhost' (using password: NO)
-----------------------------------------------------------------------------------------------
The database.yml file is configured like this:
# MySQL. Versions 4.1 and 5.0 are recommended.
#
# Install the MySQL driver:
# gem install mysql
# On Mac OS X:
# sudo gem install mysql -- --with-mysql-dir=/usr/local/mysql
# On Mac OS X Leopard:
# sudo env ARCHFLAGS="-arch i386" gem install mysql -- --with-mysql-
config=/usr/local/mysql/bin/mysql_config
# This sets the ARCHFLAGS environment variable to your native
architecture
# On Windows:
# gem install mysql
# Choose the win32 build.
# Install MySQL and put its /bin directory on your path.
#
# And be sure to use new-style password hashing:
# http://dev.mysql.com/doc/refman/5.0/en/old-client.html
development:
adapter: mysql
encoding: utf8
database: library_development
username: root
password: password

This suggests that you have put a password in database.yml, but the
error suggests there is no password. Is there a password in
database.yml?

Have you checked that you can access the database via mysql using root
and whatever password is in this file?

I *think* that you may need to restart the server if you change database.yml.

Finally instantrails is very old, unless it has been recently updated.
If you *must* do development on Windows then I think railsinstaller
is currently recommended. Most would say that it is better to use Mac
or Linux (I use Ubuntu). It is possible to do the development in a
virtual machine such as vmware or virtualbox running Ubuntu on the
windows host if you must use windows.

Colin

In a 'ruby console' window you can use the mysql commands. You should be able to do something like 'mysql -u root -ppassword library_development'
If this does not work it means you have a missmatch between the password and what mysql has as the password.

If that works you might look closely at the database.yml. It is picky about format and tabs cause problems.

Can you access the database ok using MysqlAdmin?

InstantRails works fine within its limitations. I use it all of the time for my limited purpose.

Norm

Thanks Norm!
I fixed the error.I used a wrong password in database.yml.
And sorry for delayed response.
Thanks for your response :slight_smile:

Sorry for delayed response,Colin.
Your advice helped and I fixed the error.
Thanks !