数据库初始化
更新时间:
本章将为您介绍如何进行数据库初始化工作。
1.功能介绍
平台提供了2款初始化相关的节点,后续初始化工具将逐步迭代推出。
- MySQL初始化:针对MySQL数据的初始化工具,只需填写需要连接的数据库相关信息及sql文件即可完成数据库初始化工作。
- 初始化节点:通过用户上传镜像(内部包含了导入数据库数据的操作)的方式来完成初始化工作。
2.功能差异
初始化节点、自研节点及中间件节点生命周期对比表:
节点类型 | 初始化节点 | 自研节点/中间件节点 |
---|---|---|
运行次数 | 1次,只在应用配置被部署时运行 | n次,应用配置被部署及应用重启后都会重新部署。 |
运行时长 | 短时间,完成初始工作即结束 | 长时间,应用部署后处于长时间运行的节点。 |
3.使用说明
3.1MySQL初始化节点
MySQL数据库的属性配置
首先需要在应用配置
画布中拖拽MySQL初始化节点,将初始化节点连线至MySQL数据库节点,同时在MySQL数据库配置中填写需要被初始化的数据库相关配置(数据库服务名称、数据库名称、数据库账户、数据库密码)。
MySQL初始化的属性配置
填写数据库链接信息,并上传需要执行的sql文件。
MySQL节点与MySQL初始化节点的字段填写映射关系,如下表所示。
节点 | MySQL节点 | MySQL初始化节点 |
---|---|---|
字段填写关系 | 服务名称 | 数据库服务名称 |
数据库名称 | 数据库名称 | |
用户名 | 数据库用户名 | |
用户密码 | 数据库密码 |
初始化节点
- 初始化节点的属性配置。
- 镜像内容镜像可以通过很多种方式来完成相关数据库的初始化工作:
- 通过bash脚本的方式来import sql文件。
- 通过代码方式连接数据库后执行sql文件。
#!/bin/bash --login
function prop() {
env|grep "${1}"|cut -d'=' -f2
}
#从容器的环境变量中获取MySQL访问信息
USER=$(prop 'iot\.hosting\.{服务名称}\.mysqlUser')
PASSWORD=$(prop 'iot\.hosting\.{服务名称}\.mysqlPassword')
HOSTNAME_FULL=$(prop 'iot\.hosting\.{服务名称}\.mysqlUrl')
HOSTNAME_TEMP=${HOSTNAME_FULL#jdbc:mysql://}
HOSTNAME=${HOSTNAME_TEMP%:*}
DBNAME=${HOSTNAME_TEMP##*/}
#通过sql文件初始化数据库
mysql -h ${HOSTNAME} -u ${USER} -p${PASSWORD} -D ${DBNAME} < db.sql
文档内容是否对您有帮助?