小编tyo*_*mka的帖子

在 docker 卷中为 Oracle 数据库持久化数据

我创建了用于存储我的应用程序数据库数据的卷 - docker volume create dbvolume.

然后我使用 Oracle XE 11g 数据库映像和数据量启动了我的 docker 容器。

docker run --name=OracleXE --shm-size=1g -p 1521:1521 -p 8080:8080 -e ORACLE_PWD=weblogic1 -v dbvolume:/opt/oracle/oradata oracle/database:11.2.0.2-xe

在数据库中存储了一些条目。停止并删除容器,然后再次启动它,但数据库中没有数据持久化。

如何在对应用程序的后续请求中获取持久数据。

persistence volume oracle11g docker

11
推荐指数
1
解决办法
8765
查看次数

内存数据库H2中的Spring Boot在初始化时不从文件加载数据

我在应用程序初始化时将数据加载到内存数据库中时遇到问题.我已经创建schema.sql文件data.sql含有表结构和初始数据文件.

schema.sql:

CREATE TABLE users (
  id          INT PRIMARY KEY,
  username    VARCHAR(64) NOT NULL,
  password    VARCHAR(64) 
);
Run Code Online (Sandbox Code Playgroud)

data.sql:

INSERT INTO users (id, username, password) VALUES
  (1, 'usr1', 'bigSecret'),
  (2, 'usr2', 'topSecret');
Run Code Online (Sandbox Code Playgroud)

我正在使用JpaRepository数据层:

public interface UserRepository extends JpaRepository<User, Long> {
}
Run Code Online (Sandbox Code Playgroud)

我还配置了application.properties

spring.datasource.initialize=true
spring.datasource.url=jdbc:h2:mem:testdb;DB_CLOSE_DELAY=- 1;DB_CLOSE_ON_EXIT=FALSE
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=
Run Code Online (Sandbox Code Playgroud)

但是当我打电话时

List<User> users = userRepository.findAll();
Run Code Online (Sandbox Code Playgroud)

用户实体

@Entity
@Table(name = "users")
public class User {

  @Id
  @GeneratedValue
  private Long id;
  private String username;
  private String …
Run Code Online (Sandbox Code Playgroud)

java spring h2 spring-data-jpa spring-boot

6
推荐指数
1
解决办法
9601
查看次数