【问题描述】

使用MyBatis对MySQL数据库中的数据表进行操作时出现“Error updating database.”报错。主要内容为:Error updating database.  Cause: java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)

【问题详情】

### Error updating database.  Cause: java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
### The error may exist in com/mapper/UserMapper.xml
### The error may involve com.mapper.UserMapper.addUser
### The error occurred while executing an update
### Cause: java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)at org.apache.ibatis.exceptions.ExceptionFactory.wrapException(ExceptionFactory.java:30)at org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:199)at org.apache.ibatis.session.defaults.DefaultSqlSession.insert(DefaultSqlSession.java:184)at com.service.impl.UserServiceImpl.addUser(UserServiceImpl.java:64)at test.Test.main(Test.java:11)
Caused by: java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:129)at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:97)at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)at com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:827)at com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:447)at com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:237)at com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:199)at java.sql.DriverManager.getConnection(DriverManager.java:664)at java.sql.DriverManager.getConnection(DriverManager.java:208)at org.apache.ibatis.datasource.unpooled.UnpooledDataSource.doGetConnection(UnpooledDataSource.java:221)at org.apache.ibatis.datasource.unpooled.UnpooledDataSource.doGetConnection(UnpooledDataSource.java:216)at org.apache.ibatis.datasource.unpooled.UnpooledDataSource.getConnection(UnpooledDataSource.java:95)at org.apache.ibatis.datasource.pooled.PooledDataSource.popConnection(PooledDataSource.java:422)at org.apache.ibatis.datasource.pooled.PooledDataSource.getConnection(PooledDataSource.java:89)at org.apache.ibatis.transaction.jdbc.JdbcTransaction.openConnection(JdbcTransaction.java:138)at org.apache.ibatis.transaction.jdbc.JdbcTransaction.getConnection(JdbcTransaction.java:60)at org.apache.ibatis.executor.BaseExecutor.getConnection(BaseExecutor.java:336)at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:85)at org.apache.ibatis.executor.SimpleExecutor.doUpdate(SimpleExecutor.java:49)at org.apache.ibatis.executor.BaseExecutor.update(BaseExecutor.java:117)at org.apache.ibatis.executor.CachingExecutor.update(CachingExecutor.java:76)at org.apache.ibatis.session.defaults.DefaultSqlSession.update(DefaultSqlSession.java:197)... 3 more

【初步检查】

根据报错内容检查相应的UserMapper.xml文件的代码后,确定代码逻辑、语法无误。

【问题分析】

报错内容“Access denied for user 'root'@'localhost' (using password: YES)”表达的直接意思是:名为“root”的用户在“localhost”端口使用密码对数据库的访问被拒绝了。

初步猜想有两种情况导致:1.数据库服务未启动。    2.连接数据库的用户名或密码错误。

【解决方案】

1.使用管理员权限,通过命令提示符打开mysql数据库的服务。

2.使用管理员权限,通过命令提示符重置密码。

【执行解决方案1】

使用管理员权限运行命令提示符,在弹出的窗口输入:“net start mysql;”回车。启动数据库服务后,发现问题依然存在。

【执行解决方案2】

接下来重置数据库8.0.16的root密码。

点击查看重置root密码操作

【解决完成】

重置root密码后,按照新重置的密码编辑代码,连接数据库成功。

【总结】

本次问题的症结是:遗忘了数据库root密码,编辑代码时使用了错误的密码访问数据库,导致访问被拒绝。

改错记录:MyBatis连接MySql数据库对数据表进行操作时报错 Error updating database.相关推荐

  1. Python Web开发框架之Django篇——二、Django连接MySQL数据库以及建表的操作

    二.Django连接MySQL数据库以及建表的操作 准备工作:安装Python访问MySQL的模块 一.修改project同名目录下面的__init__.py文件 二.修改project同名目录下面的 ...

  2. Android中连接MySql数据库获取数据的简单实现

    文章目录 背景 demo布局 导入jar包 demo代码实现 权限设置 应用运行的结果 背景 一般情况下,Android与数据库中的数据进行交互都是通过调用api接口来实现的.但是今天我们就来尝试实现 ...

  3. mybatis向mysql数据库插入数据时,中文乱码显示为?解决方法

    mybatis向mysql数据库插入数据时,中文乱码显示为?解决方法 1.先查看库.表.表字符字段的编码格式.MySQL默认的库和表的字符编码都是latin1,而我们一般需要使用 utf8 //先查看 ...

  4. php如何在mysql数据库里创建表_php创建mysql数据库以及数据表

    php创建mysql数据库以及数据表 用php链接到mysqli,成功后利用,mysqli_query()创建数据库以及数据表. $con = mysqli_connect("localho ...

  5. 从零开始学 MySQL —数据库和数据表操作

    ​前言 今天我们学习下核心的内容,学习并实践如何对数据库表和表中的内容做修改,删除,重命名等操作.(想看看周末还有多少爱学习的小伙伴,你们在哪里呀,O(∩_∩)O哈哈~) 1.目录 数据库操作:删除数 ...

  6. wps连接mysql数据库增删改查_Python操作MySQL数据库实例详解【安装、连接、增删改查等】...

    本文实例讲述了python操作MySQL数据库.分享给大家供大家参考,具体如下: 1.安装 通过Python连接MySQL数据库有很多库,这里使用官方推荐的MySQL Connector/Python ...

  7. 6.MySQL数据库与数据表操作

    数据库的操作:数据库创建 :数据库删除 数据表的操作:数据表的创建:数据表的修改 (表结构) :数据表的删除 数据库的操作 1.数据库的创建 # 链接mysql数据库后,进入mysql后可以操作数据 ...

  8. IDEA(2018)连接MySQL数据库失败的解决方法(报错08001)

    IDEA(2018)连接MySQL数据库失败的解决方法(报错08001) 参考文章: (1)IDEA(2018)连接MySQL数据库失败的解决方法(报错08001) (2)https://www.cn ...

  9. MySQL数据库与数据表的创建

    MySQL数据库与数据表的创建 文章目录 MySQL数据库与数据表的创建 前言 一.创建数据库 二.使用数据库 三.创建数据表 前言 MySQL的介绍 什么叫数据库: 作用:存储数据,能够长期保存(断 ...

  10. 数据库中文mybatis连接mysql数据库插入中文乱码

    文章结束给大家来个程序员笑话:[M] 对于mysql数据库的乱码问题,有两中情况: 1. mysql数据库编码问题(建库时设定). 2. 连接mysql数据库的url编码设置问题. 对于第一个问题,目 ...

最新文章

  1. Python培训入门基础知识学什么?
  2. python 函数 默认参数
  3. Python-从视频到gif(imageio,moviepy,ffmpeg)
  4. 原创 | 初学者友好!最全算法学习资源汇总(附链接)
  5. 操作系统实验1—实现单处理机下的进程调度程序
  6. 【放置奇兵】踩坑记录( 白字、红字、黄字)tips 小技巧
  7. python数学公式代码导入_NumPy 数学函数及代数运算的实现代码
  8. 僵尸进程孤儿进程与守护进程
  9. 帆软报表(finereport)JS实现cpt中详细单元格刷新
  10. eclipse导出war包放入服务器中
  11. 科罗拉多州立大学计算机科学专业,2020年科罗拉多州立大学有哪些优势专业
  12. Web在线预览CAD(使用AUTODESK)
  13. 微信小程序之直播功能使用详解
  14. GKCTF 2020 re
  15. Adaptive AUTOSAR Diagnostic Manager模块介绍(一)
  16. win10安装的虚拟机无法连接网络
  17. css基本语法选择器
  18. 4.22 虾皮_小米_度小满
  19. JAVA程序设计题解与上机指导 第四版 第8章 Java的图形用户界面设计 8.2 创建“My JFrame”
  20. FICO入门系列2:FICO中的组织架构

热门文章

  1. 7.微服务设计 --- 测试
  2. 2.Zabbix企业级分布式监控系统 --- Zabbix 简介
  3. 43.mysqladmin
  4. 3.高性能MySQL --- 服务器性能剖析
  5. 49. NAT 服务器
  6. 34. login-shell 和 环境变量
  7. 33.启动流程,模块管理与 Loader
  8. jquery中的尺寸函数width(),height(),innerWidth(),outerWidth()等的用法
  9. Jquery—Jquery中的(function($){...})(jQuery)
  10. 匿名对象与非匿名对象的区别