On Monday 07 May 2001 1:29 am, Alud wrote:
I've been trying to set up a mySQL server today, and I can get so far, but keep getting a problem, I've never done anything like this before so I'm quite happy to accept that I'm missing something easy, but any help would be gratefully received. amy:~/mysql-3.23.37-pc-linux-gnu-i686 # ./bin/mysqladmin -u root -p password ******** Enter password: ******** /bin/mysqladmin: connect to server at 'localhost' failed error: 'Access denied for user: 'root@localhost' (Using password: YES)'
Hi Lenz' point is worth checking, and I also assume you have run mysql_install_db to set up the MySQL tables. If you have set a password and you still have no access, you probably need to change the grants. MySQL sets up TWO root accesses: root@hostname, and root@localhost, but it only seems to apply the password to the former. You could try stopping mysqld, and then restarting it with: mysqld --skip-grant-tables I THINK this means that MySQL will start without any password security (MySQL experts, correct me if I'm wrong.) Then run: mysql which should take you into the monitor. Then run: grant all on *.* to root@localhost identified by "password"; This should give full control over all databases and tables to root@localhost. Check by running: select host, user, password from user; You should see a list of the users, their hosts, and their passwords. You can then stop mysqld and restart it normally. Hopefully, this time you should have access. You can then give other users control over other databases and tables, eg: mysql -uroot -pwhatever grant all on database.* to user@localhost identified by "password"; grant insert on database.table to user2@hostname identified by "password"; and so on. Let me know how you get on. Kevin