mysql登录报错:ERROR 1045 (28000): Access denied for user root@localhost (using password: NO)

网上一大堆解决方法,这里只是补充。

网友给出的安全模式跳过权限表的解决方法:

# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’;
mysql> FLUSH PRIVILEGES;
mysql> quit
# /etc/init.d/mysql restart
# mysql -uroot -p
Enter password: <输入新设的密码newpassword>
mysql>

按照上述操作,出现以下问题:

一、执行 mysqld_safe 时,报错/usr/local/mysql/bin/mysqlld 找不到;

      解决:将mysql的安装路径/mysql/bin下的mysqld链接至/usr/local/mysql/bin/mysqlld

                #ln -s /server/mysql-5.5.37/bin/mysqld   /usr/local/mysql/bin/mysqld

二、再次执行mysqld_safe发现mysql服务并没有启动起来;

       解决:查看日志,发现【error】说是路径的问题;在mysql配置文件my.conf中添加:

                basedir=/server/mysql              mysql路径
                datadir=/server/mysql/data      mysql data路径

你可能感兴趣的:(mysql登录报错:ERROR 1045 (28000): Access denied for user root@localhost (using password: NO))