zoukankan      html  css  js  c++  java
  • 1045-Access denied for user 'root'@'localhost'解决方法

    1、出现这个问题的原因之一是权限的问题,也就是说你的电脑可能没有权限访问mysql数据库。

    讲道理这种情况其实基本上不该遇到,因为我们在安装mysql之后,root其实是有最高权限的,而且很少会有人去修改root的权限。

    这个问题的解决方法就是授权。授权命令大概是这样的:

    grant all privileges on *.* to 'root'@'我电脑的ip地址' identified by '密码';


    如果你不是用root登陆的,那么就把root改成你的登陆名。
    有的同学可能不知道这个命令往哪里写,

    开始——运行——输入“cmd”——点击确定

    这样就打开了我们的命令提示符界面:

    然后找到我们的mysql的安装目录,将目录复制到命令提示符中。如图:

    (cd 是什么意思我想不用特别解释了吧)

    然后进入目录下的bin文件:

    然后输入 mysql -u root -p 如图:

    在Enter password: 后面输入你的密码。点击回车。

    如果密码正确,会出现Welcome 的字符。

    如图:

    这样就成功进入了mysql数据库。

    当然如果你已经设置了环境变量,那么不用进入mysql目录,直接输入mysql -uroot就可以了。

    当然,你也可以直接打开mysql下的bin窗口,然后按住shift+鼠标右键,选择“在此处打开命令窗口”,就可以直接在bin目录下打开命令提示符窗口了。

    接下来就简单了,直接将上面的代码修改一下就可以用了。比如我的电脑的ip地址是:192.168.0.103,我的root密码是:123456,那么我就可以将授权的语句改成:

    grant all privileges on *.* to 'root'@'192.168.0.103' identified by '123456';
    如果你是本地登录的,那么:
    grant all privileges on *.* to 'root'@'localhost' identified by '123456';
    当然你也可以直接改成这样:
    grant all privileges on *.* to 'root'@'%' identified by '123456';
    就可以给所有ip都设定root登陆了。
    如果授权成功,会有Query OK的提示。
    然后:
    flush privileges;
    这个是刷新授权的意思,如果没有这句话,授权可能无法立刻生效。
    exit;
    这个是退出的意思。
    授权完成以后,你可以再尝试一下登陆,看看能不能登上。反正我登陆不上。

  • 相关阅读:
    王道考研复习-操作系统-进程管理(二)
    王道考研复习-操作系统-计算机系统概述(一)
    Understanding Undefined Behavior
    iOS开发需要掌握的命令
    LLDB命令速查
    Flutter简介
    poj 2115 C Looooops 扩展欧几里得算法
    poj 2635 The Embarrassed Cryptographer ??/Java??(???)
    poj 3292 Semi-prime H-numbers 筛素数(简单题)
    poj 1019 Number Sequence 数学
  • 原文地址:https://www.cnblogs.com/telwanggs/p/12054792.html
Copyright © 2011-2022 走看看