数据库连接失败!一直报这个错!能不能给解决了还???

数据库连接失败!一直报这个错!能不能给解决了还???

http://img1.sycdn.imooc.com//climg/5d58f39900017bbc19201039.jpg

提问八百回了。按照助教给的方法做了,还是不行!

重点是我是按照老师步骤一步一步来的,都报错!

而且运行你们提供的课后代码,还是报这个错!

这就不合理了啊!!!!!还这么多天不给解决!

服务费交的是给你们来跟我闹着玩儿来的吗?????????????

真想投诉你们慕课!搞的什么玩意这是??????????????

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

4回答
曼曼喜欢你 2019-09-07 13:17:21

你看下clinet does not support 那句报错,我遇到相同问题,因为我的MySQL是8.x版本的,网上查到就是mysql-connector的jar包版本不符。里头似乎有一个密码验证机制有更新吧。导致无法连接到数据库。

曼曼喜欢你 2019-09-07 13:15:19

兄弟,把mysql-connector的jar包换一下,我估计你MySQL的版本是比老师提供的jar包版本更高。

下载链接

https://dev.mysql.com/downloads/

http://img1.sycdn.imooc.com//climg/5d733ab00001712517741260.jpg

http://img1.sycdn.imooc.com//climg/5d733aca0001e4ab20181270.jpg

http://img1.sycdn.imooc.com//climg/5d733ae00001c94f20301008.jpg

解压后里面有一个jar包,如下http://img1.sycdn.imooc.com//climg/5d733b03000104de05120050.jpg



另外,兄弟可以在控制台(Terminal)登录MySQL

mysql -uroot -p

登录数据库可以查看自己MySQL的版本。


如果上面我给你的jar包版本不对,你可以自己找一下对应版本哈:

https://blog.csdn.net/milan__kundera/article/details/81182757



顺便吐槽下,本章节老师讲课不详细,很多东西我都是自己对照报错信息去百度。老师只讲怎么做,不讲其所以然,呵呵,其实我还不如自己看书呢。

另外,我觉得如果这部分学着不舒服,可以先放放,先去学spring框架吧,这部分我觉得学着心里憋屈。什么?没买spring部分的?那挺好,省了一笔钱,哈哈。我就是一冲动把整套就业班课程给买了,目前逼着自己学完再说。


另外,静下心来,慢慢的逐行去理解代码,多少都有收获的。慕课的视频教程还是有短板:

  1. 整套就业办多个老师来讲,鱼龙混杂;

  2. 视频教程的诟病,不能满足不同学习进度的同学。有的人天分高,随便提点下就通了,我天分低,更希望老师教得更易懂。

吐槽完毕,加油吧。我自己买的课,难受也得跪着学完。吐槽我不只一次了,没啥卵用。

  • 非常抱歉给同学带来不好的学习体验,也非常感谢同学帮助其他同学,学习遇到问题时确实有时候会比较烦躁,关于给同学带来的不便深表歉意。遇到问题可以在问答区提问,老师们会帮助同学解决问题的。祝学习愉快
    2019-09-07 14:54:13
芝芝兰兰 2019-08-18 16:13:13

同学你好。同学可以参考步骤一的教辅操作一下呢,有专门的说这个问题:

http://img1.sycdn.imooc.com//climg/5d5908600001e7ec15000448.jpg

http://img1.sycdn.imooc.com//climg/5d5907f00001ec7a06210542.jpg

祝学习愉快~

芝芝兰兰 2019-08-18 15:32:01

同学你好。理解同学想要解决问题的迫切心情,不要着急,先来帮同学理一下思路:

1、首先先请同学明白,每个电脑的环境是不同的,jdk版本、mysql版本、编辑器版本等等,甚至每个人设置的用户名和密码都是不同的。

作为一名编程人员,第一步,是要接受这个不同,并且探索如何将别人的代码在本地的环境中运行起来。

随着学习的深入,代码利用的组件增多,老师再想做到,也是不可能做到同学完全照搬代码就可以一定在本地运行无差错的。


2、我们就事论事,分析报错原因,这里的报错信息是: Client does not support authentication protocol requested by server; consider upgrading MySQL client

大概意思是mysql没有通过身份验证。


3、为了确定mysql正确的身份信息是什么,我们需要先验证下自己的mysql能不能正常连接,打开cmd窗口,输入“mysql -uroot -p”单击回车,会提示输入密码“Enter password:”如果同学曾设置过密码,那就输入你的密码。如果没有,mysql默认是没有密码的。那么直接敲击回车

http://img1.sycdn.imooc.com//climg/5d58f8c80001cb3206780394.jpg

后面显示的这串信息就是成功进入mysql中的证明了~

然后会显示mysql的命令行,即http://img1.sycdn.imooc.com//climg/5d58fa5d0001cc7600990038.jpg

在这里敲击如下命令:

1)改变当前操作基于的数据库为mysql中核心数据库,敲回车后会有Datebase changed的反馈。证明修改成功。

USE mysql;

http://img1.sycdn.imooc.com//climg/5d58fb66000151fa01950042.jpg

2)修改本地(localhost代表本地主机)的root用户的默认密码为'123456',成功会有Query OK

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

http://img1.sycdn.imooc.com//climg/5d58fba00001e95106430049.jpg

3)刷新缓存,确保这个更改可以应用上。

FLUSH PRIVILEGES;

http://img1.sycdn.imooc.com//climg/5d58fc0d0001f3ee03420055.jpg

4)退出后重新登录试试,退出命令是“quit”,按回车后反馈为Bye,是它再跟你说再见。

http://img1.sycdn.imooc.com//climg/5d58fce8000180ec01650040.jpg

然后在新出现的命令行敲第一步时的命令,重新登入,试一下刚刚设置的密码好不好用:

http://img1.sycdn.imooc.com//climg/5d58fd4d0001dbd406440209.jpg


4、这时可以将自己的密码修改为123456,然后再试一下了。如果这个报错消失了,那就是同学的进步,你已经解决了一个问题了!

之后如果再遇到新的报错信息。可能是别的原因,再一步步探索哦~学习要多给自己些耐心呢~其实编程就是一步步调解bug的过程。


祝学习愉快~


  • 提问者 讓倪飛翔 #1
    输入“mysql -uroot -p”单击回车。 提示mysql不是内部命令,也不是可运行的程序。这是什么情况? 我学第一章的时候安装了mysql8的,现在需要怎么做? 重新再安装一遍mysql吗????
    2019-08-18 16:04:19
  • 曼曼喜欢你 回复 提问者 讓倪飛翔 #2
    你应该接触过mysql吧,这句命令的意思是通过 "-u"+用户名 "-p" 回车后输入密码,来登录数据库。 如果提示不是内部命令,那么考虑是否存在环境变量,或mysql没有安装等问题了。 可以搜一下“mysql安装”、"Windows环境变量配置"、"mysql环境变量配置"等关键词,找找相关方法。
    2019-09-07 13:27:37
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
Java数据库开发与实战应用2018版
  • 参与学习           人
  • 提交作业       277    份
  • 解答问题       4297    个

Java数据库开发的必备技能,从流行的MySQL数据库开始,到Java原生的数据库管理接口JDBC的使用,再到常用的数据持久化框架MyBatis,让你向Java工程师的目标又迈进了一步!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师