mysql - Minishift MySQL 服务未显示实际数据库
问题描述
使用 Springboot 2.2.4 和 Openshift 的本地发行版(Minishift、Kubernetes Master 1.11、Openshift Web Console 3.11)。
该应用程序本身只是一个spring-boot-starter-data-rest CRUD,用于在 Openshift 的 pod 中配置的简单 Employee 实体。数据源是另一个容器中的 MySQL 服务。
在部署时,一些数据被加载到员工表中。仅 4 名员工用于测试目的。
DROP TABLE IF EXISTS employee;
CREATE TABLE employee (
id int(11) NOT NULL AUTO_INCREMENT,
first_name varchar(45) DEFAULT NULL,
last_name varchar(45) DEFAULT NULL,
email varchar(45) DEFAULT NULL,
PRIMARY KEY (`id`)
);
--
-- Data for table `employee`
--
INSERT INTO employee VALUES
(1,'Leslie','Andrews','leslie@luv2code.com'),
(2,'Emma','Baumgarten','emma@luv2code.com'),
(3,'Avani','Gupta','avani@luv2code.com'),
(4,'Yuri','Petrov','yuri@luv2code.com');
一切都很完美。所有端点都已很好地发布,并且一切正常。
但出于好奇,我正在尝试连接一些 mysql 查看器以检查它在启动时加载并稍后在 API 使用时更改的数据。但是我在任何地方都找不到桌子。我正在尝试两种方法:
- 进入 mysql 容器并通过命令行(mysql 命令)。我连接到数据库,但它是空的(没有表)。
- 使用 phpMysqlAdmin 实例配置第三个 pod,该实例显然也完美地连接到数据库,但再次显示没有表或数据(除了 information_schema)。
configmap.yml
apiVersion: v1
kind: ConfigMap
metadata:
name: spring-boot-bootstrap
data:
application.properties: |-
spring.datasource.url=jdbc:mysql://mydatabase:3306/mydatabase
fabric8\deployment.yml
spec:
template:
spec:
containers:
- env:
- name: SPRING_PROFILES_ACTIVE
value: mysql
- name: SPRING_DATASOURCE_USER
valueFrom:
secretKeyRef:
name: mydatabase
key: database-user
- name: SPRING_DATASOURCE_PASSWORD
valueFrom:
secretKeyRef:
name: mydatabase
key: database-password
livenessProbe:
httpGet:
path: /actuator/health
port: 8080
scheme: HTTP
initialDelaySeconds: 180
readinessProbe:
httpGet:
path: /actuator/health
port: 8080
scheme: HTTP
initialDelaySeconds: 30
任何想法?
解决方案
Postgres 具有相同的行为者。
进入 Postgres 容器并通过命令行(Postgres 命令)。我连接到数据库,但它是空的(没有表)。
我用小班。
jdbc:postgresql://localhost:25432/pstgrs1 在客户端工作。我使用了 spring 应用程序,它可以工作,但表是空的。
示例 DROP TABLE IF EXISTS 城市;CREATE TABLE 城市(id 序列主键,名称 VARCHAR(255),人口整数);
推荐阅读
- javascript - 客户端之间的firestore同步时间
- delphi - Delphi TDataSetProvider.ApplyUpdates 使用方法
- python - 检测具有特定颜色的圆形物体
- python - 比较两个字典的键。如果键匹配,则将这些键、值复制到 python 中的文件
- postgresql - Postgres 版本兼容性
- c++ - 如何使用现代 CMake 安装捆绑的接口依赖项?
- angular - Angular 5 和原生 IOS/Android 通信
- perl - websocket异步反馈长流程
- java - 为什么 ForkJoinPool::invoke() 会阻塞主线程?
- sql - 如何避免联合所有