端口占用以及yml配置数据库连接失败

端口占用以及yml连接数据库失败

Springboot项目启动时显示你设置的端口被占用,如何找到并杀死进程,以及使用properties文件进行配置时能够正常访问数据库,但是使用yml文件进行配置时却显示Access denied for user 'root'@'localhost' (using password: YES)

端口占用解决

启动显示端口已被占用Web server failed to start. Port 8081 was already in use.,首先需要先检查一下你是否有自己选择使用的端口,例如,你将前端端口启动在了8081这个时候你启动后端在8081你就需要更改前端的端口或者时先停止掉,当然这是你已知的可能存在的占用,但是有一些软件的端口是默认的,就比如我遇到过酷狗的就是8080端口,所以如果8080启动失败将酷狗后台退出一下试试。

首先查找端口:

netstat -ano | findstr 8081  #显示该端口的进程信息,包括PID

可选查看端口占用的软件:

tasklist | findstr 114511   #替换PID,例如PID为114511

强制杀死进程:

taskkill /pid 114511 -t -f    #例如PID为114511

如此,就将端口占用的程序给解决啦,在第二部中,查看端口占用的软件可以大概明白是谁在占用,比如如果是另外一个tocat那么显示的就是java.exe,可以让心里有一个数,下次或许直接就能猜出来。

yml文件配置数据库失败

首先是感谢.yml文件_SpringBoot项目使用yml文件链接数据库异常-CSDN博客提供的经验,正是因为一个个的分享才能让对于个人的困难得以解决

此处的问题首先是需要先排除掉你没有将username写成name,这种较为基本的错误,我最开始得配置如下,yml比较讲究缩进

spring:
  datasource:
    username: root
    password: 000000
    url: jdbc:mysql:///Personal?SSL=off
    driver-class-name: com.mysql.cj.jdbc.Driver

但是后面发现一直报错Access denied for user 'root'@'localhost' (using password: YES)显示密码错误,一直不得其解,当在properties文件中进行配置时又没有问题

spring.datasource.username=root
spring.datasource.password=000000
spring.datasource.url=jdbc:mysql:///pethome?SSL=off
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

然后看到了上面这篇经验,才发现,如果是使用yml文件配置似乎会将密码作为整型,所以如果使用这种较为特殊,全是0的,就会被当作一个0,最后的结果就是密码错误。

这似乎跟python的机制相同,所以在密码上加上双引号,使其变为字符串则可以规避此问题,下为正确的配置:

spring:
  datasource:
    username: root
    password: "000000"
    url: jdbc:mysql:///pethome?SSL=off
    driver-class-name: com.mysql.cj.jdbc.Driver

然后就可以解决此问题,正常访问数据库啦。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值