mvc5数据库链接mysql8.0.13连不了吗?

subxli 2019-01-09 05:53:24
nuget的mysql程序包是6.9.9的,和这个有关系吗?

如果有,正常应该怎么做?
...全文
280 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
subxli 2019-01-14
  • 打赏
  • 举报
回复
顶一个顶一个顶一个
无V涯 2019-01-10
  • 打赏
  • 举报
回复
连接不了,看下具体错误,如果是版本问题,更换mysql引用的版本,可以先用工具试试能否连接上,如果能,说明是代码问题,检查下mysql是否设置了端口,默认是3389,可能数据库被改了默认端口
by_封爱 版主 2019-01-10
  • 打赏
  • 举报
回复
提示什么错误? 我的是dll是8.0.13.0 可以连接mysql8.0.
subxli 2019-01-10
  • 打赏
  • 举报
回复
引用 6 楼 Net诚心 的回复:
原因:mysql6以后的版本驱动包版本和驱动配置变了

mysql6以前版本配置:

db.properties配置:
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/taotao?characterEncoding=utf-8
jdbc.username=root
jdbc.password=root

驱动包版本:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.32</version>
</dependency>

mysql6以后版本配置:

db.properties配置:
jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://192.168.25.124:3306/taotao?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&verifyServerCertificate=false&autoReconnct=true&autoReconnectForPools=true&allowMultiQueries=true
jdbc.username=root
jdbc.password=root

注:serverTimezone :指定时区。如果设定serverTimezone=UTC,会比中国时间早8个小时,如果在中国,可以选择Asia/Shanghai或者Asia/Hongkong。即:serverTimezone=Shanghai

驱动包版本:

因为我的数据库版本为8.0.13,故使用了8.0.13版本的驱动包

具体驱动包版本可在https://repo.maven.apache.org/maven2/mysql/mysql-connector-java/中查找
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.13</version>
</dependency>


有.net版本的吗?



无V涯 2019-01-10
  • 打赏
  • 举报
回复
原因:mysql6以后的版本驱动包版本和驱动配置变了

mysql6以前版本配置:

db.properties配置:
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/taotao?characterEncoding=utf-8
jdbc.username=root
jdbc.password=root

驱动包版本:
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.32</version>
</dependency>

mysql6以后版本配置:

db.properties配置:
jdbc.driver=com.mysql.cj.jdbc.Driver
jdbc.url=jdbc:mysql://192.168.25.124:3306/taotao?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8&useSSL=false&verifyServerCertificate=false&autoReconnct=true&autoReconnectForPools=true&allowMultiQueries=true
jdbc.username=root
jdbc.password=root

注:serverTimezone :指定时区。如果设定serverTimezone=UTC,会比中国时间早8个小时,如果在中国,可以选择Asia/Shanghai或者Asia/Hongkong。即:serverTimezone=Shanghai

驱动包版本:

因为我的数据库版本为8.0.13,故使用了8.0.13版本的驱动包

具体驱动包版本可在https://repo.maven.apache.org/maven2/mysql/mysql-connector-java/中查找
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.13</version>
</dependency>
subxli 2019-01-10
  • 打赏
  • 举报
回复
是不是要在nuget里更新包?
subxli 2019-01-10
  • 打赏
  • 举报
回复
引用 2 楼 Net诚心 的回复:
连接不了,看下具体错误,如果是版本问题,更换mysql引用的版本,可以先用工具试试能否连接上,如果能,说明是代码问题,检查下mysql是否设置了端口,默认是3389,可能数据库被改了默认端口



端口是正确的,Navicat能连上
subxli 2019-01-10
  • 打赏
  • 举报
回复
引用 1 楼 by_封爱 的回复:
提示什么错误?

我的是dll是8.0.13.0 可以连接mysql8.0.

“System.Data.Entity.Core.ProviderIncompatibleException”类型的异常在 EntityFramework.dll 中发生,但未在用户代码中进行处理

110,477

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧