• 1045 Access denied for user 'root'@'localhost' (using password:YES)


    MySQL可视化工具为Navicat。

    这个错误是这样说的:

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

    这个意思是说:用户“root”@本地主机的访问被拒绝

    那为什么会出现这种错误呢?

    答案是这样:这种问题的本质是用户密码出现错误。

    那如何解决呢?

    以下是我今天的解决经验:

    1.找到MySQL安装路径下的my.ini文件,用记事本的方式打开;

    2.打开后,找到mysqld这个位置,这个文件的内容中有多个mysqld,注意看箭头所指位置

    3.在 [mysqld] 底下添加语句:skip-grant-tables,添加完毕后保存。如果提示不让修改这个文件,则可将它复制到桌面,再用记事本打开它,添加完毕后,将桌面上的文件复制到原来的地方,赋值时选择替换目标文件;

    好学的你肯定也想知道这个skip-grant-tables是什么意思,如下介绍:

    skip-grant-tables作为启动参数的作用:MYSQL服务器不加载权限判断,任何用户都能访问数据库。

    也就是说,启用这个参数之后,数据库的安全性会降低。

    4.WIN+R —>cmd—>mysql -u root -p,这个命令是连接数据库服务器的命令;遇到Enter passward:直接回车;

    5.继续执行如下操作:

    mysql>use mysql //使用这个数据库

    mysql>update user set password=password("123456") where user="root"; //修改数据库的密码

    mysql>flush privileges; //刷新数据库

    这要步骤已经完成,我们来看看修改后的用户和密码:

    到这里修改密码的工作已经完成。接下来要将在my.ini中添加的语句删掉。删掉之后再重启服务器,在测试链接,如果没有错误,一切OK;如果删掉语句,重启服务器之后任然有1045错误,那么,还是在my.ini原来删掉这条语句的位置中添加这条语句:skip-grant-tables,再重启服务器,再测试,一切OK。

    服务在哪里?

    ctrl + alt + delete —>任务管理器—>服务—>点右键—>重启服务

  • 相关阅读:
    Eureka的使用
    自定义类加载器
    继承
    Active Objects模式
    Future设计模式
    mysql备份与还原
    多生产者多消费者(第一种方式),基于synchronized,wait,notifyAll
    自己实现阻塞队列(基于数组)
    linux定时任务每隔5分钟向文本追加一行
    自己实现CountDownLatch
  • 原文地址:https://www.cnblogs.com/linyinmobayu/p/12870353.html
Copyright © 2020-2023  润新知