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


    Exception: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
    
    问题描述如下:
    
    landen@landen-Lenovo:~$ su root;
    密码: 
    root@landen-Lenovo:/home/landen# mysql
    ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
    
    原因:mysql数据库的user表里,存在用户名为空的账户即匿名账户,导致登录的时候是虽然用的是root,但实际是匿名登录的,通过错误提示里的''@'localhost'可以看出来
    
    solution: 
    1.(http://www.jb51.net/LINUXjishu/10981.html)
    2.(http://blog.csdn.net/tys1986blueboy/article/details/7056835)
    
    演示如下:
    root@landen-Lenovo:/home/landen# /etc/init.d/mysql stop
    Rather than invoking init scripts through /etc/init.d, use the service(8)
    utility, e.g. service mysql stop
    
    Since the script you are attempting to invoke has been converted to an
    Upstart job, you may also use the stop(8) utility, e.g. stop mysql
    mysql stop/waiting
    root@landen-Lenovo:/home/landen# mysqld_safe --user=mysql --skip-grant-tables --skip-networking&
    [1] 15969
    root@landen-Lenovo:/home/landen# 130406 15:32:52 mysqld_safe Can't log to error log and syslog at the same time.  Remove all --log-error configuration options for --syslog to take effect.
    130406 15:32:52 mysqld_safe Logging to '/var/log/mysql/error.log'.
    130406 15:32:52 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
    
    root@landen-Lenovo:/home/landen# mysql -u root mysql
    Reading table information for completion of table and column names
    You can turn off this feature to get a quicker startup with -A
    
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 1
    Server version: 5.5.29-0ubuntu0.12.04.2 (Ubuntu)
    
    Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    mysql> update user set Password=PASSWORD('lk198981') where user='root';
    Query OK, 0 rows affected (0.08 sec)
    Rows matched: 4  Changed: 0  Warnings: 0
    
    mysql> flush privileges;
    Query OK, 0 rows affected (0.04 sec)
    
    mysql> quit;
    Bye
    root@landen-Lenovo:/home/landen# /etc/init.d/mysql restart
    Rather than invoking init scripts through /etc/init.d, use the service(8)
    utility, e.g. service mysql restart
    
    Since the script you are attempting to invoke has been converted to an
    Upstart job, you may also use the stop(8) and then start(8) utilities,
    e.g. stop mysql ; start mysql. The restart(8) utility is also available.
    mysql start/running, process 16401
    root@landen-Lenovo:/home/landen# mysql -uroot -p
    Enter password: 
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 37
    Server version: 5.5.29-0ubuntu0.12.04.2 (Ubuntu)
    
    Copyright (c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | metastore_db       |
    | mysql              |
    | performance_schema |
    | test               |
    +--------------------+
    5 rows in set (0.00 sec)
    
    mysql> create database student;
    Query OK, 1 row affected (0.01 sec)
    
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | metastore_db       |
    | mysql              |
    | performance_schema |
    | student            |
    | test               |
    +--------------------+
    6 rows in set (0.00 sec)
    
    mysql> use student;
    Database changed
    mysql> quit;
    Bye
  • 相关阅读:
    [转载]Shell十三问(入门与提高)
    [转载]FPGA学习步骤
    matlab设计切比雪夫低通滤波器
    累加器A与ACC区别
    [转载]3分钟设计滤波器
    [转载]卷积运算的实际意义
    [转载]CRC校验原理
    一个怂女婿的成长笔记【三】
    一个怂女婿的成长笔记【一】
    一个怂女婿的成长笔记【二】
  • 原文地址:https://www.cnblogs.com/likai198981/p/3002518.html
Copyright © 2020-2023  润新知