![datasource及statements元素](https://gitee.com/mianshenglee/datastorage/raw/master/md-photo/deploy-tool/datasource%E5%85%83%E7%B4%A0.jpg)
`datasourse`/`statements`元素是用于设置与数据库操作相关的配置,主要在`OperRunDbStatement`操作中进行设置。`datasourse`元素设置数据库连接连接信息,与jdbc连接数据库内容一致,包括`driver-class-name`,`url`,`username`,`password`。如下示例使用配置文件中的占位符设置:
```xml
<datasource>
<driver-class-name><![CDATA[com.mysql.jdbc.Driver]]></driver-class-name>
<url><![CDATA[jdbc:mysql://$${server_mysql_ip}:$${server_mysql_port}/$${server_mysql_dbname}?useUnicode=true&characterEncoding=utf8]]></url>
<username><![CDATA[$${server_mysql_db_username}]]></username>
<password><![CDATA[$${server_mysql_db_password}]]></password>
</datasource>
```
`statements`元素是需要执行sql语句。它包含>=1个`statement`元素,每个`statement`元素对应一条sql语句,一般在部署中使用较多的是`insert`,`update`,`delete`等语句。如下所示:
```xml
<statements>
<statement>
<![CDATA[UPDATE `$${server_mysql_dbname}`.`sys_config` SET `value` = '$${deployment_home}/system_file/test/source'
WHERE `name` = 'store.server.folder.source';]]>
</statement>
<statement>
<![CDATA[UPDATE `$${server_mysql_dbname}`.`sys_config` SET `value` = '$${deployment_home}/system_file/test/temp'
WHERE `name` = 'store.server.folder.temp';]]>
</statement>
</statements>
```
注意:
> * 建议把在运行部署工具时才确定的变量,同时需要应用到数据库中的时候才放在此处执行。如上述示例中,根据当前部署路径更新到数据库表中。
> * 不建议把大量的sql语句在此执行,若需要执行大量sql语句,可写在sql脚本中,然后通过`OperRunCommand`操作执行shell/bat脚本。
> * 元素的值建议都添加在`<![CDATA[]]>`中,以免出现特殊字符匹配失败的情况。
[17]: http://ww2.sinaimg.cn/large/72d660a7gw1fbn8jk0ye0j20bf05sq30.jpg
- 关于部署工具
- 1. 使用场景
- 1.1 传统部署方式痛点
- 1.2 自动部署方式
- 2. 功能概览
- 2.1 部署工具面向的人员
- 2.2 部署工具功能
- 3. 部署工具运行流程
- 3.1 部署工具从制作到使用
- 3.2 部署工具目录结构
- 3.3 运行流程
- 3.4 配置文件概述
- 3.4.1 全局属性配置文件global_config
- 3.4.2 用户属性配置文件custom_config
- 3.4.3 其它属性配置文件
- 3.4.4 流程配置文件
- 3.4.5 占位符
- 4. 部署工具使用详解
- 4.1 流程配置文件简单示例
- 4.2 流程配置文件结构
- 4.2.1 首行及根元素
- 4.2.2 xml文件结构
- 4.2.3 properties/property元素
- 4.2.4 executions/group元素
- 4.2.5 execution元素
- 4.2.6 configuration元素
- 4.2.7 dependencies元素
- 4.2.8 sub-execution元素
- 4.2.9 commands元素
- 4.2.10 replace-files元素
- 4.2.11 datasourse/statements元素
- 4.2.12 args元素
- 4.3 流程配置文件功能示例
- 4.3.1 分析安装及卸载mariadb需要的模块
- 4.3.2 确定用户统一配置
- 4.3.3 编写流程配置文件
- 4.4 部署脚本编写
- 5. 完整db(mariadb及redis)部署示例
- 5.1 mariadb及redis部署结构分析
- 5.1.1 模块划分
- 5.1.2 部署环境包制作
- 5.1.3 项目实施人员使用流程
- 5.2 db部署包示例及脚本
- 5.3 部署环境升级
- 6. 问题与反馈