嵌入式(embedded)与非嵌入式数据库

大家好,我是神韵,是一个技术&生活博主。出文章目的主要是两个,一是好记忆不如烂笔头,记录总结中提高自己。二是希望我的文章可以帮到大家。欢迎来点赞打卡,你们的行动将是我无限的动力。
本篇主题是:嵌入式和非嵌入式数据库

一、嵌入式和非嵌入式数据库介绍
嵌入数据库是指数据在内存中数据库,英文称为–embedded,又称in-memory embedded database,如H2, HSQL and Derby databases。
非嵌入式数据库是指数据在磁盘中的数据库,如MariaDB, MySQL and Oracle。

官网对embedded 的使用有简单的介绍
https://docs.spring.io/spring-boot/docs/1.5.9.RELEASE/reference/html/boot-features-sql.html#boot-features-embedded-database-support
在这里插入图片描述
意思是嵌入式数据库非常方便使用,但是不提供持久化功能。使用嵌入式数据库不需要配置URL,您只需要包含对要使用的嵌入式数据库的构建依赖项。
强调可以要URL,但是需要禁用数据库的自动关闭,让它交由springboot程序管理。

在这里插入图片描述
需要依赖于spring jdbc,比如提供jpa的自动配置就可以。如果你配置了URL,如H2,那要确保URL参数中DB_CLOSE_ON_EXIT=FALSE的配置,禁用数据库的自动关闭允许 Spring Boot 控制何时关闭数据库。

yml properties

spring:
  datasource:
    platform: h2
    #jdbc:h2:~/testdb 会报错,数据库不会自动创建---已经解决,降低h2版本199-197
    #url: jdbc:h2:mem:testdb;MODE=MYSQL;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE
    url: jdbc:h2:~/testdb;MODE=MYSQL;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE
    username: sa
    password:
    #data: classpath:sql/boot_backend.sql

dependency info

    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <dependency>
      <groupId>com.h2database</groupId>
      <artifactId>h2</artifactId>
      <version>1.4.199</version>
      <scope>runtime</scope>
    </dependency>

2.6.x 版本相关介绍,大同小异…
https://docs.spring.io/spring-boot/docs/2.6.x/reference/html/data.html#data.sql.datasource.embedded

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值