Could not create connection to database server+MySQL 8.0版本连接报错+端口被占用的解决办法

最近写项目的时候由于自己Mysql数据库版本低的问题,出现了测试数据不能写到数据库的问题;后来就索性重新装了数据库,遇到了一系列的问题;

1、安装包、驱动包都可以私聊找我要;QQ583868545;驱动你想要合适的去官网下载:https://dev.mysql.com/downloads/file/?id=484819

安装教程:https://blog.csdn.net/qq_37350706/article/details/81707862

2、项目不能启动,需要改变配置文件;

端口占用问题:

有时候启动项目发现端口被占用了,快速定位问题方法;

(1)WIN+R,cmd

(2)输入命令行    netstat -ano出现

找到项目日志打印的是哪个端口被占用,比如是1099端口被占用,记住PID是多少,这里的是5512;

(3)ctrl+shift+esc打开任务管理器,去把程序的PID是5512的停掉,再次重新启动项目就行了;

Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]

错误原因: 
提示说是数据源配置错误,dialect,driver_class,url,username,password。检查一下这五项
解决方法: 
org.hibernate.dialect.MySQL5Dialect:新版本的mysql方言 
org.hibernate.dialect.MySQLDialect :老版本的mysql方言 
如果你配置的是老版本的方言,可以修改成新版本的方言。 
另外在检查一下其他四项的配置时候有错,单词错误之类的 
不要认为你的配置就一定是正确的,有时候不经意间写错单词了 

3、Mysql8.0的相关配置和遇到的问题

配置Druid连接池,最关键的地方是

a.驱动变了、方言变了

b.url后面追加上时区!!!时区!!!

 <!--配置数据库连接池-->
    <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
        <property name="driverClassName" value="com.mysql.cj.jdbc.Driver"></property>
        <property name="url" value="jdbc:mysql://127.0.0.1:3306/ssh? 
   useUnicode=true&amp;characterEncoding=utf8&amp;useSSL=false&amp;serverTimezone=GMT%2B8"></property>
        <property name="username" value="root"></property>
        <property name="password" value="root"></property>
 </bean>

<!--配置sessionFactory-->
    <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
        <!--spring接管了Hibernate配置-->
        <!--<property name="configLocation" value="classpath:hibernate.cfg.xml"></property>-->

        <!--使用druid连接池来连接数据库-->
        <property name="dataSource" ref="dataSource"></property>

        <!--hibernate的可选配置: 通过property-->
        <property name="hibernateProperties">
            <props>
                <prop key="show_sql">true</prop>
                <prop key="hibernate.hbm2ddl.auto">update</prop>
                <prop key="hibernate.format_sql">true</prop>
                <prop key="hibernate.dialect">org.hibernate.dialect.MySQL8Dialect</prop>
            </props>
        </property>

        <!--配置映射文件-->
        <property name="mappingLocations">
            <array>
                <value>classpath:mapping/*.hbm.xml</value>
            </array>
        </property>
    </bean>

另外在你的项目包下也要记得将原来的驱动给替换掉;

猜你喜欢

转载自blog.csdn.net/formydream111/article/details/89194758