mirror of
https://gitee.com/dromara/dbswitch.git
synced 2025-08-29 00:44:19 +00:00
修正POM内容
This commit is contained in:
@@ -6,7 +6,7 @@ body:
|
||||
attributes:
|
||||
label: dbswitch版本
|
||||
options:
|
||||
- "2.0.0"
|
||||
- "2.0.0(1.9.x版本升级到2.0版本请查看文档)"
|
||||
- "1.9.10"
|
||||
- "1.9.9"
|
||||
- "1.9.8"
|
||||
|
@@ -117,7 +117,7 @@ jdbc连接地址:jdbc:mysql://127.0.0.1:9030/test?useUnicode=true&characterEnc
|
||||
jdbc驱动名称:com.mysql.jdbc.Driver
|
||||
```
|
||||
|
||||
**Doris数据库**
|
||||
**Apache Doris数据库(>=1.2.2)**
|
||||
|
||||
```
|
||||
jdbc连接地址:jdbc:mysql://127.0.0.1:9030/test?useUnicode=true&characterEncoding=utf-8&useSSL=false
|
||||
|
@@ -50,7 +50,7 @@ const constantRouter = new Router({
|
||||
},
|
||||
{
|
||||
path: '/task',
|
||||
name: '数据接入',
|
||||
name: '迁移任务',
|
||||
icon: "el-icon-s-tools",
|
||||
component: () => import('@/views/task/index'),
|
||||
children: [
|
||||
|
@@ -88,7 +88,7 @@
|
||||
</li>
|
||||
<li>StarRocks
|
||||
</li>
|
||||
<li>Doris
|
||||
<li>Apache Doris
|
||||
</li>
|
||||
<li>MongoDB(只支持数据加载写入,不支持变化量同步)
|
||||
</li>
|
||||
|
@@ -19,18 +19,6 @@
|
||||
size="medium"
|
||||
status-icon>
|
||||
<div class="f1">
|
||||
|
||||
<el-form-item label="支持版本">
|
||||
<span v-for="(o, index) of connectionDriver"
|
||||
:key="index"
|
||||
:offset="1">
|
||||
{{ o.driverVersion }}
|
||||
<span v-if="index !== connectionDriver.length-1">
|
||||
、
|
||||
</span>
|
||||
</span>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item prop="name"
|
||||
label="数据源名称"
|
||||
style="width:40%">
|
||||
@@ -57,16 +45,6 @@
|
||||
<!-- <label>utf8、utf8mb4</label>-->
|
||||
<!-- </el-form-item>-->
|
||||
|
||||
</div>
|
||||
<div class="f1">
|
||||
<el-form-item label="连接模式">
|
||||
<el-radio-group v-model="createform.mode">
|
||||
<el-radio :label=0>默认</el-radio>
|
||||
<el-radio :disabled="true"
|
||||
:label=1>专业</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item v-if="isShowUrlAndPort()"
|
||||
prop="address"
|
||||
label="连接地址">
|
||||
@@ -99,7 +77,7 @@
|
||||
placeholder="请选择编码格式">
|
||||
<el-option label="utf8"
|
||||
value="utf8"></el-option>
|
||||
<!-- <el-option label="utf8mb4" value="utf8mb4"></el-option>-->
|
||||
<!-- <el-option label="utf8mb4" value="utf8mb4"></el-option>-->
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
@@ -121,12 +99,6 @@
|
||||
label-width="120px"
|
||||
prop="url"
|
||||
style="width:85%">
|
||||
<el-tooltip placement="top">
|
||||
<i class="el-icon-question">样例:</i>
|
||||
<div slot="content">
|
||||
{{ this.selectedDataSource.sample }}
|
||||
</div>
|
||||
</el-tooltip>
|
||||
<el-input type="textarea"
|
||||
:rows="6"
|
||||
:spellcheck="false"
|
||||
@@ -167,7 +139,6 @@ export default {
|
||||
name: "",
|
||||
type: "",
|
||||
version: "",
|
||||
mode: 0,
|
||||
address: "",
|
||||
port: "",
|
||||
databaseName: "",
|
||||
@@ -380,7 +351,6 @@ export default {
|
||||
type: this.selectedDataSource.type,
|
||||
version: this.createform.version,
|
||||
driver: driverClass,
|
||||
mode: 0,
|
||||
address: this.createform.address,
|
||||
port: this.createform.port,
|
||||
databaseName: this.createform.databaseName,
|
||||
|
@@ -18,12 +18,6 @@
|
||||
status-icon>
|
||||
<div class="f1">
|
||||
|
||||
<el-form-item label="支持版本">
|
||||
<span>
|
||||
{{ this.dataSourceInfo.version }}
|
||||
</span>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item prop="name"
|
||||
label="数据源名称"
|
||||
style="width:40%">
|
||||
@@ -49,16 +43,6 @@
|
||||
<label>{{dataSourceInfo.characterEncoding}}</label>
|
||||
</el-form-item>
|
||||
|
||||
</div>
|
||||
<div class="f1">
|
||||
<el-form-item label="连接模式">
|
||||
<el-radio-group v-model="dataSourceInfo.mode">
|
||||
<el-radio :label=0>默认</el-radio>
|
||||
<el-radio :disabled="true"
|
||||
:label=1>专业</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item prop="address"
|
||||
label="连接地址">
|
||||
<el-input :readonly=true
|
||||
@@ -148,7 +132,6 @@ export default {
|
||||
typeName: "",
|
||||
version: "",
|
||||
driver: "",
|
||||
mode: 0,
|
||||
address: "",
|
||||
port: "",
|
||||
databaseName: "",
|
||||
@@ -167,7 +150,6 @@ export default {
|
||||
},
|
||||
created () {
|
||||
this.dataSourceInfo = this.$route.query;
|
||||
this.dataSourceInfo.mode = parseInt(this.dataSourceInfo.mode)
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
@@ -20,17 +20,6 @@
|
||||
status-icon>
|
||||
<div class="f1">
|
||||
|
||||
<el-form-item label="支持版本">
|
||||
<span v-for="(o, index) of connectionDriver"
|
||||
:key="index"
|
||||
:offset="1">
|
||||
{{ o.driverVersion }}
|
||||
<span v-if="index !== connectionDriver.length-1">
|
||||
、
|
||||
</span>
|
||||
</span>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item prop="name"
|
||||
label="数据源名称"
|
||||
style="width:40%">
|
||||
@@ -57,16 +46,6 @@
|
||||
<!-- <label>utf8、utf8mb4</label>-->
|
||||
<!-- </el-form-item>-->
|
||||
|
||||
</div>
|
||||
<div class="f1">
|
||||
<el-form-item label="连接模式">
|
||||
<el-radio-group v-model="updateform.mode">
|
||||
<el-radio :label=0>默认</el-radio>
|
||||
<el-radio :disabled="true"
|
||||
:label=1>专业</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item v-if="isShowUrlAndPort()"
|
||||
prop="address"
|
||||
label="连接地址">
|
||||
@@ -121,12 +100,6 @@
|
||||
label-width="120px"
|
||||
prop="url"
|
||||
style="width:85%">
|
||||
<el-tooltip placement="top">
|
||||
<i class="el-icon-question">样例:</i>
|
||||
<div slot="content">
|
||||
{{ this.selectedDataSource.sample }}
|
||||
</div>
|
||||
</el-tooltip>
|
||||
<el-input type="textarea"
|
||||
:rows="6"
|
||||
:spellcheck="false"
|
||||
|
@@ -14,9 +14,6 @@
|
||||
plain
|
||||
@click="batchStop()">停用</el-button>
|
||||
<span style="color:#e9e9f3;"> | </span>
|
||||
<el-button size="mini"
|
||||
plain
|
||||
@click="batchImport()">导入</el-button>
|
||||
<el-button size="mini"
|
||||
:disabled=isSelected
|
||||
plain
|
||||
@@ -343,12 +340,6 @@ export default {
|
||||
}
|
||||
});
|
||||
},
|
||||
batchImport () {
|
||||
this.$message({
|
||||
message: '功能暂未开放,敬请期待!',
|
||||
center: true
|
||||
});
|
||||
},
|
||||
downloadFile: function (resp) {
|
||||
const headers = resp.headers;
|
||||
const contentType = headers['content-type'];
|
||||
|
@@ -118,4 +118,24 @@
|
||||
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-install-plugin</artifactId>
|
||||
<version>2.5.2</version>
|
||||
<configuration>
|
||||
<skip>true</skip>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-deploy-plugin</artifactId>
|
||||
<version>2.8.2</version>
|
||||
<configuration>
|
||||
<skip>true</skip>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
</project>
|
||||
|
@@ -55,7 +55,6 @@ public class SwaggerConfig {
|
||||
pars.add(ticketPar.build());
|
||||
|
||||
return new Docket(DocumentationType.SWAGGER_2)
|
||||
.enable(true)
|
||||
.groupName("需要认证的接口")
|
||||
.apiInfo(createApiInfo())
|
||||
.select()
|
||||
@@ -69,7 +68,6 @@ public class SwaggerConfig {
|
||||
@Bean(value = "publicApi")
|
||||
public Docket publicApi() {
|
||||
return new Docket(DocumentationType.SWAGGER_2)
|
||||
.enable(true)
|
||||
.groupName("无需认证的接口")
|
||||
.apiInfo(createApiInfo())
|
||||
.select()
|
||||
|
@@ -25,7 +25,6 @@ public class DbConnectionDetailConverter extends
|
||||
response.setType(databaseConnectionEntity.getType());
|
||||
response.setVersion(databaseConnectionEntity.getVersion());
|
||||
response.setDriver(databaseConnectionEntity.getDriver());
|
||||
response.setMode(databaseConnectionEntity.getMode());
|
||||
response.setAddress(databaseConnectionEntity.getAddress());
|
||||
response.setPort(databaseConnectionEntity.getPort());
|
||||
response.setDatabaseName(databaseConnectionEntity.getDatabaseName());
|
||||
|
@@ -44,9 +44,6 @@ public class DatabaseConnectionEntity {
|
||||
@TableField("driver")
|
||||
private String driver;
|
||||
|
||||
@TableField("mode")
|
||||
private Integer mode;
|
||||
|
||||
@TableField("address")
|
||||
private String address;
|
||||
|
||||
|
@@ -22,7 +22,6 @@ public class DbConnectionCreateRequest {
|
||||
private ProductTypeEnum type;
|
||||
private String version;
|
||||
private String driver;
|
||||
private Integer mode;
|
||||
private String address;
|
||||
private String port;
|
||||
private String databaseName;
|
||||
@@ -38,7 +37,6 @@ public class DbConnectionCreateRequest {
|
||||
databaseConnectionEntity.setType(type);
|
||||
databaseConnectionEntity.setVersion(version.trim());
|
||||
databaseConnectionEntity.setDriver(driver.trim());
|
||||
databaseConnectionEntity.setMode(0);
|
||||
databaseConnectionEntity.setAddress(address.trim());
|
||||
databaseConnectionEntity.setPort(port.trim());
|
||||
databaseConnectionEntity.setDatabaseName(databaseName.trim());
|
||||
|
@@ -23,7 +23,6 @@ public class DbConnectionUpdateRequest {
|
||||
private ProductTypeEnum type;
|
||||
private String version;
|
||||
private String driver;
|
||||
private Integer mode;
|
||||
private String address;
|
||||
private String port;
|
||||
private String databaseName;
|
||||
@@ -39,7 +38,6 @@ public class DbConnectionUpdateRequest {
|
||||
databaseConnectionEntity.setType(type);
|
||||
databaseConnectionEntity.setVersion(version.trim());
|
||||
databaseConnectionEntity.setDriver(driver.trim());
|
||||
databaseConnectionEntity.setMode(mode);
|
||||
databaseConnectionEntity.setAddress(address.trim());
|
||||
databaseConnectionEntity.setPort(port.trim());
|
||||
databaseConnectionEntity.setDatabaseName(databaseName.trim());
|
||||
|
@@ -40,9 +40,6 @@ public class DbConnectionDetailResponse {
|
||||
@ApiModelProperty("驱动类")
|
||||
private String driver;
|
||||
|
||||
@ApiModelProperty("连接模式:0默认 1专业")
|
||||
private Integer mode;
|
||||
|
||||
@ApiModelProperty("连接地址")
|
||||
private String address;
|
||||
|
||||
|
@@ -1,11 +1,4 @@
|
||||
-- IN YOUR QUARTZ PROPERTIES FILE,
|
||||
-- YOU'LL NEED TO SET ORG.QUARTZ.JOBSTORE.DRIVERDELEGATECLASS = ORG.QUARTZ.IMPL.JDBCJOBSTORE.STDJDBCDELEGATE
|
||||
-- 你需要在你的QUARTZ.PROPERTIES文件中设置ORG.QUARTZ.JOBSTORE.DRIVERDELEGATECLASS = ORG.QUARTZ.IMPL.JDBCJOBSTORE.STDJDBCDELEGATE
|
||||
-- STDJDBCDELEGATE说明支持集群,所有的任务信息都会保存到数据库中,可以控制事物,还有就是如果应用服务器关闭或者重启,任务信息都不会丢失,并且可以恢复因服务器关闭或者重启而导致执行失败的任务
|
||||
-- THIS IS THE SCRIPT FROM QUARTZ TO CREATE THE TABLES IN A MYSQL DATABASE, MODIFIED TO USE INNODB INSTEAD OF MYISAM
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_JOB_DETAILS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_JOB_DETAILS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
JOB_NAME VARCHAR(200) NOT NULL,
|
||||
JOB_GROUP VARCHAR(200) NOT NULL,
|
||||
@@ -19,8 +12,7 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_JOB_DETAILS
|
||||
PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP)
|
||||
) ENGINE=INNODB COMMENT = '存储每一个已配置的JOB的详细信息';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_TRIGGERS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_TRIGGERS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
TRIGGER_NAME VARCHAR(200) NOT NULL,
|
||||
TRIGGER_GROUP VARCHAR(200) NOT NULL,
|
||||
@@ -42,8 +34,7 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_TRIGGERS
|
||||
REFERENCES DBSWITCH_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP)
|
||||
) ENGINE=INNODB COMMENT = '存储已配置的TRIGGER的信息';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_SIMPLE_TRIGGERS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_SIMPLE_TRIGGERS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
TRIGGER_NAME VARCHAR(200) NOT NULL,
|
||||
TRIGGER_GROUP VARCHAR(200) NOT NULL,
|
||||
@@ -55,8 +46,7 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_SIMPLE_TRIGGERS
|
||||
REFERENCES DBSWITCH_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)
|
||||
) ENGINE=INNODB COMMENT = '存储已配置的SIMPLE类型的触发器(包括重复次数,间隔,及已触的次数)';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_CRON_TRIGGERS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_CRON_TRIGGERS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
TRIGGER_NAME VARCHAR(200) NOT NULL,
|
||||
TRIGGER_GROUP VARCHAR(200) NOT NULL,
|
||||
@@ -67,8 +57,7 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_CRON_TRIGGERS
|
||||
REFERENCES DBSWITCH_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)
|
||||
) ENGINE=INNODB COMMENT = '存储CRON类型的触发器(包括Cron表达式和时区信息)';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_SIMPROP_TRIGGERS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_SIMPROP_TRIGGERS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
TRIGGER_NAME VARCHAR(200) NOT NULL,
|
||||
TRIGGER_GROUP VARCHAR(200) NOT NULL,
|
||||
@@ -88,8 +77,7 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_SIMPROP_TRIGGERS
|
||||
REFERENCES DBSWITCH_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)
|
||||
)ENGINE=INNODB COMMENT = '存储CalendarIntervalTrigger和DailyTimeIntervalTrigger两种类型的触发器';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_BLOB_TRIGGERS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_BLOB_TRIGGERS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
TRIGGER_NAME VARCHAR(200) NOT NULL,
|
||||
TRIGGER_GROUP VARCHAR(200) NOT NULL,
|
||||
@@ -100,23 +88,20 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_BLOB_TRIGGERS
|
||||
REFERENCES DBSWITCH_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)
|
||||
)ENGINE=INNODB COMMENT = 'TRIGGER作为BLOB类型存储(用于QUARTZ用户用JDBC创建他们自己定制的TRIGGER类型,JOBSTORE并不知道如何存储实例的时候)';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_CALENDARS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_CALENDARS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
CALENDAR_NAME VARCHAR(200) NOT NULL,
|
||||
CALENDAR BLOB NOT NULL,
|
||||
PRIMARY KEY (SCHED_NAME,CALENDAR_NAME)
|
||||
)ENGINE=INNODB COMMENT = '以BLOB类型存储QUARTZ的CALENDAR日历信息,QUARTZ可配置一个日历来指定一个时间范围';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_PAUSED_TRIGGER_GRPS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_PAUSED_TRIGGER_GRPS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
TRIGGER_GROUP VARCHAR(200) NOT NULL,
|
||||
PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP)
|
||||
) ENGINE=INNODB COMMENT = '存储已暂停的TRIGGER组的信息';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_FIRED_TRIGGERS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_FIRED_TRIGGERS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
ENTRY_ID VARCHAR(95) NOT NULL,
|
||||
TRIGGER_NAME VARCHAR(200) NOT NULL,
|
||||
@@ -133,8 +118,7 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_FIRED_TRIGGERS
|
||||
PRIMARY KEY (SCHED_NAME,ENTRY_ID)
|
||||
) ENGINE=INNODB COMMENT = '存储与已触发的TRIGGER相关的状态信息,以及相联JOB的执行信息';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_SCHEDULER_STATE
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_SCHEDULER_STATE (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
INSTANCE_NAME VARCHAR(200) NOT NULL,
|
||||
LAST_CHECKIN_TIME BIGINT(13) NOT NULL,
|
||||
@@ -142,15 +126,12 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_SCHEDULER_STATE
|
||||
PRIMARY KEY (SCHED_NAME,INSTANCE_NAME)
|
||||
) ENGINE=INNODB COMMENT = '存储少量的有关 SCHEDULER的状态信息,和别的 SCHEDULER 实例(假如是用于一个集群中)';
|
||||
|
||||
-- 存储程序的非观锁的信息(假如使用了悲观锁)
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_LOCKS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_LOCKS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
LOCK_NAME VARCHAR(40) NOT NULL,
|
||||
PRIMARY KEY (SCHED_NAME,LOCK_NAME)
|
||||
) ENGINE=INNODB COMMENT = '存储程序的非观锁的信息(假如使用了悲观锁)';
|
||||
|
||||
-- 创建索引
|
||||
CREATE INDEX IDX_DBSWITCH_J_REQ_RECOVERY ON DBSWITCH_JOB_DETAILS(SCHED_NAME,REQUESTS_RECOVERY);
|
||||
CREATE INDEX IDX_DBSWITCH_J_GRP ON DBSWITCH_JOB_DETAILS(SCHED_NAME,JOB_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_T_J ON DBSWITCH_TRIGGERS(SCHED_NAME,JOB_NAME,JOB_GROUP);
|
||||
|
@@ -35,6 +35,10 @@ create table `DBSWITCH_DATABASE_CONNECTION` (
|
||||
`type` varchar(200) not null default '' comment '数据库类型',
|
||||
`version` varchar(255) not null default '' comment '驱动版本',
|
||||
`driver` varchar(200) not null default '' comment '驱动类名称',
|
||||
`address` varchar(200) not null default '' comment '连接地址',
|
||||
`port` varchar(20) not null default '' comment '连接端口号',
|
||||
`database_name` varchar(200) not null default '' comment '数据库名',
|
||||
`character_encoding` varchar(20) not null default '' comment '编码格式',
|
||||
`url` longtext comment 'jdbc-url连接串',
|
||||
`username` varchar(200) not null default '' comment '连接账号',
|
||||
`password` varchar(200) not null default '' comment '账号密码',
|
||||
@@ -63,13 +67,22 @@ create table `DBSWITCH_ASSIGNMENT_CONFIG` (
|
||||
`assignment_id` bigint(20) unsigned not null comment '任务ID',
|
||||
`source_connection_id` bigint(20) unsigned not null comment '来源端连接ID',
|
||||
`source_schema` varchar(1024) not null default '' comment '来源端的schema',
|
||||
`table_type` varchar(32) null default 'TABLE' COMMENT '表类型:TABLE;VIEW',
|
||||
`source_tables` longtext comment '来源端的table列表',
|
||||
`excluded_flag` tinyint(1) not null default 0 comment '是否排除(0:否 1:是)',
|
||||
`target_connection_id` bigint(20) unsigned not null comment '目的端连接ID',
|
||||
`target_schema` varchar(200) not null default '' comment '目的端的schema(一个)',
|
||||
`target_only_create` tinyint(1) not null default '0' comment '是否只建表',
|
||||
`target_drop_table` tinyint(1) not null default 0 comment '同步前是否先删除目的表(0:否 1:是)',
|
||||
`table_name_map` longtext null comment '表名映射关系',
|
||||
`column_name_map` longtext null comment '字段名映射关系',
|
||||
`target_drop_table` tinyint(1) not null default 0 comment '同步前是否先删除目的表(0:否 1:是)',
|
||||
`table_name_case` varchar(32) not null default 'none' comment '表名大小写转换策略',
|
||||
`column_name_case` varchar(32) not null default 'none' comment '列名大小写转换策略',
|
||||
`target_auto_increment` tinyint(1) not null default '0' comment '是否支持自增',
|
||||
`target_sync_option` varchar(32) not null default 'insert_update_delete' comment '同步增删改选项',
|
||||
`before_sql_scripts` varchar(4096) default null comment '目标端写入的前置执行sql脚本',
|
||||
`after_sql_scripts` varchar(4096) default null comment '目标端写入的后置执行sql脚本',
|
||||
`channel_size` bigint(20) unsigned not null default 100 comment '通道队列大小',
|
||||
`batch_size` bigint(20) unsigned not null default 10000 comment '处理批次大小',
|
||||
`first_flag` tinyint(1) not null default 1 comment '首次加载数据',
|
||||
`create_time` timestamp not null default current_timestamp comment '创建时间',
|
||||
@@ -94,3 +107,12 @@ create table `DBSWITCH_ASSIGNMENT_JOB` (
|
||||
primary key (`id`),
|
||||
foreign key (`assignment_id`) references `DBSWITCH_ASSIGNMENT_TASK` (`id`) on delete cascade on update cascade
|
||||
) engine=innodb auto_increment=1 default charset=utf8 comment='JOB日志表';
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `DBSWITCH_JOB_LOGBACK` (
|
||||
`id` bigint not null auto_increment comment '自增id',
|
||||
`uuid` varchar(128) not null comment 'job id',
|
||||
`content` longtext comment '日志内容',
|
||||
`create_time` timestamp not null default current_timestamp comment '创建时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uuid` (`uuid`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='JOB执行日志';
|
||||
|
@@ -1,27 +0,0 @@
|
||||
CREATE TABLE IF NOT EXISTS `DBSWITCH_JOB_LOGBACK` (
|
||||
`id` bigint not null auto_increment comment '自增id',
|
||||
`uuid` varchar(128) not null comment 'job id',
|
||||
`content` longtext comment '日志内容',
|
||||
`create_time` timestamp not null default current_timestamp comment '创建时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `uuid` (`uuid`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='JOB执行日志';
|
||||
|
||||
ALTER TABLE `DBSWITCH_ASSIGNMENT_CONFIG`
|
||||
ADD COLUMN `target_only_create` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否只建表' AFTER `target_drop_table`,
|
||||
ADD COLUMN `table_type` VARCHAR(32) NULL DEFAULT 'TABLE' COMMENT '表类型:TABLE;VIEW' AFTER `source_schema`,
|
||||
ADD COLUMN `table_name_case` varchar(32) NOT NULL DEFAULT 'NONE' COMMENT '表名大小写转换策略' AFTER `target_schema`,
|
||||
ADD COLUMN `column_name_case` varchar(32) NOT NULL DEFAULT 'NONE' COMMENT '列名大小写转换策略' AFTER `table_name_case`,
|
||||
ADD COLUMN `target_auto_increment` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否支持自增' AFTER `target_only_create`,
|
||||
ADD COLUMN `target_sync_option` varchar(32) NOT NULL DEFAULT 'INSERT_UPDATE_DELETE' COMMENT '同步增删改选项' AFTER `target_auto_increment`,
|
||||
ADD COLUMN `before_sql_scripts` varchar(4096) DEFAULT NULL COMMENT '目标端写入的前置执行SQL脚本' AFTER `target_sync_option`,
|
||||
ADD COLUMN `after_sql_scripts` varchar(4096) DEFAULT NULL COMMENT '目标端写入的后置执行SQL脚本' AFTER `before_sql_scripts`,
|
||||
ADD COLUMN `channel_size` bigint(20) unsigned not null default 100 comment '通道队列大小' AFTER `batch_size`;
|
||||
|
||||
ALTER TABLE `DBSWITCH_DATABASE_CONNECTION`
|
||||
ADD COLUMN `mode` varchar(20) not null default '0' comment '连接模式:0默认 1专业' AFTER `driver`,
|
||||
ADD COLUMN `address` varchar(200) not null default '' comment '连接地址' AFTER `mode`,
|
||||
ADD COLUMN `port` varchar(20) not null default '' comment '连接端口号' AFTER `address`,
|
||||
ADD COLUMN `database_name` varchar(200) not null default '' comment '数据库名' AFTER `port`,
|
||||
ADD COLUMN `character_encoding` varchar(20) not null default '' comment '编码格式' AFTER `database_name`;
|
||||
|
@@ -1,10 +1,4 @@
|
||||
-- Thanks to Patrick Lightbody for submitting this...
|
||||
--
|
||||
-- In your Quartz properties file, you'll need to set
|
||||
-- org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.PostgreSQLDelegate
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_JOB_DETAILS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_JOB_DETAILS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
JOB_NAME VARCHAR(200) NOT NULL,
|
||||
JOB_GROUP VARCHAR(200) NOT NULL,
|
||||
@@ -18,8 +12,7 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_JOB_DETAILS
|
||||
PRIMARY KEY (SCHED_NAME, JOB_NAME, JOB_GROUP)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_TRIGGERS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_TRIGGERS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
TRIGGER_NAME VARCHAR(200) NOT NULL,
|
||||
TRIGGER_GROUP VARCHAR(200) NOT NULL,
|
||||
@@ -41,8 +34,7 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_TRIGGERS
|
||||
REFERENCES DBSWITCH_JOB_DETAILS (SCHED_NAME, JOB_NAME, JOB_GROUP)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_SIMPLE_TRIGGERS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_SIMPLE_TRIGGERS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
TRIGGER_NAME VARCHAR(200) NOT NULL,
|
||||
TRIGGER_GROUP VARCHAR(200) NOT NULL,
|
||||
@@ -54,8 +46,7 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_SIMPLE_TRIGGERS
|
||||
REFERENCES DBSWITCH_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_CRON_TRIGGERS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_CRON_TRIGGERS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
TRIGGER_NAME VARCHAR(200) NOT NULL,
|
||||
TRIGGER_GROUP VARCHAR(200) NOT NULL,
|
||||
@@ -66,8 +57,7 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_CRON_TRIGGERS
|
||||
REFERENCES DBSWITCH_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_SIMPROP_TRIGGERS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_SIMPROP_TRIGGERS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
TRIGGER_NAME VARCHAR(200) NOT NULL,
|
||||
TRIGGER_GROUP VARCHAR(200) NOT NULL,
|
||||
@@ -87,8 +77,7 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_SIMPROP_TRIGGERS
|
||||
REFERENCES DBSWITCH_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_BLOB_TRIGGERS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_BLOB_TRIGGERS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
TRIGGER_NAME VARCHAR(200) NOT NULL,
|
||||
TRIGGER_GROUP VARCHAR(200) NOT NULL,
|
||||
@@ -98,8 +87,7 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_BLOB_TRIGGERS
|
||||
REFERENCES DBSWITCH_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_CALENDARS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_CALENDARS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
CALENDAR_NAME VARCHAR(200) NOT NULL,
|
||||
CALENDAR BYTEA NOT NULL,
|
||||
@@ -107,15 +95,13 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_CALENDARS
|
||||
);
|
||||
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_PAUSED_TRIGGER_GRPS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_PAUSED_TRIGGER_GRPS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
TRIGGER_GROUP VARCHAR(200) NOT NULL,
|
||||
PRIMARY KEY (SCHED_NAME, TRIGGER_GROUP)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_FIRED_TRIGGERS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_FIRED_TRIGGERS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
ENTRY_ID VARCHAR(95) NOT NULL,
|
||||
TRIGGER_NAME VARCHAR(200) NOT NULL,
|
||||
@@ -132,8 +118,7 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_FIRED_TRIGGERS
|
||||
PRIMARY KEY (SCHED_NAME, ENTRY_ID)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_SCHEDULER_STATE
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_SCHEDULER_STATE (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
INSTANCE_NAME VARCHAR(200) NOT NULL,
|
||||
LAST_CHECKIN_TIME BIGINT NOT NULL,
|
||||
@@ -141,54 +126,31 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_SCHEDULER_STATE
|
||||
PRIMARY KEY (SCHED_NAME, INSTANCE_NAME)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_LOCKS
|
||||
(
|
||||
CREATE TABLE IF NOT EXISTS DBSWITCH_LOCKS (
|
||||
SCHED_NAME VARCHAR(120) NOT NULL,
|
||||
LOCK_NAME VARCHAR(40) NOT NULL,
|
||||
PRIMARY KEY (SCHED_NAME, LOCK_NAME)
|
||||
);
|
||||
|
||||
CREATE INDEX IDX_DBSWITCH_J_REQ_RECOVERY
|
||||
ON DBSWITCH_JOB_DETAILS (SCHED_NAME, REQUESTS_RECOVERY);
|
||||
CREATE INDEX IDX_DBSWITCH_J_GRP
|
||||
ON DBSWITCH_JOB_DETAILS (SCHED_NAME, JOB_GROUP);
|
||||
|
||||
CREATE INDEX IDX_DBSWITCH_T_J
|
||||
ON DBSWITCH_TRIGGERS (SCHED_NAME, JOB_NAME, JOB_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_T_JG
|
||||
ON DBSWITCH_TRIGGERS (SCHED_NAME, JOB_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_T_C
|
||||
ON DBSWITCH_TRIGGERS (SCHED_NAME, CALENDAR_NAME);
|
||||
CREATE INDEX IDX_DBSWITCH_T_G
|
||||
ON DBSWITCH_TRIGGERS (SCHED_NAME, TRIGGER_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_T_STATE
|
||||
ON DBSWITCH_TRIGGERS (SCHED_NAME, TRIGGER_STATE);
|
||||
CREATE INDEX IDX_DBSWITCH_T_N_STATE
|
||||
ON DBSWITCH_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP, TRIGGER_STATE);
|
||||
CREATE INDEX IDX_DBSWITCH_T_N_G_STATE
|
||||
ON DBSWITCH_TRIGGERS (SCHED_NAME, TRIGGER_GROUP, TRIGGER_STATE);
|
||||
CREATE INDEX IDX_DBSWITCH_T_NEXT_FIRE_TIME
|
||||
ON DBSWITCH_TRIGGERS (SCHED_NAME, NEXT_FIRE_TIME);
|
||||
CREATE INDEX IDX_DBSWITCH_T_NFT_ST
|
||||
ON DBSWITCH_TRIGGERS (SCHED_NAME, TRIGGER_STATE, NEXT_FIRE_TIME);
|
||||
CREATE INDEX IDX_DBSWITCH_T_NFT_MISFIRE
|
||||
ON DBSWITCH_TRIGGERS (SCHED_NAME, MISFIRE_INSTR, NEXT_FIRE_TIME);
|
||||
CREATE INDEX IDX_DBSWITCH_T_NFT_ST_MISFIRE
|
||||
ON DBSWITCH_TRIGGERS (SCHED_NAME, MISFIRE_INSTR, NEXT_FIRE_TIME, TRIGGER_STATE);
|
||||
CREATE INDEX IDX_QRTZ_T_NFT_ST_MISFIRE_GRP
|
||||
ON DBSWITCH_TRIGGERS (SCHED_NAME, MISFIRE_INSTR, NEXT_FIRE_TIME, TRIGGER_GROUP, TRIGGER_STATE);
|
||||
|
||||
CREATE INDEX IDX_DBSWITCH_FT_TRIG_INST_NAME
|
||||
ON DBSWITCH_FIRED_TRIGGERS (SCHED_NAME, INSTANCE_NAME);
|
||||
CREATE INDEX IDX_DBSWITCH_FT_INST_JOB_REQ_RCVRY
|
||||
ON DBSWITCH_FIRED_TRIGGERS (SCHED_NAME, INSTANCE_NAME, REQUESTS_RECOVERY);
|
||||
CREATE INDEX IDX_DBSWITCH_FT_J_G
|
||||
ON DBSWITCH_FIRED_TRIGGERS (SCHED_NAME, JOB_NAME, JOB_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_FT_JG
|
||||
ON DBSWITCH_FIRED_TRIGGERS (SCHED_NAME, JOB_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_FT_T_G
|
||||
ON DBSWITCH_FIRED_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_FT_TG
|
||||
ON DBSWITCH_FIRED_TRIGGERS (SCHED_NAME, TRIGGER_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_J_REQ_RECOVERY ON DBSWITCH_JOB_DETAILS (SCHED_NAME, REQUESTS_RECOVERY);
|
||||
CREATE INDEX IDX_DBSWITCH_J_GRP ON DBSWITCH_JOB_DETAILS (SCHED_NAME, JOB_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_T_J ON DBSWITCH_TRIGGERS (SCHED_NAME, JOB_NAME, JOB_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_T_JG ON DBSWITCH_TRIGGERS (SCHED_NAME, JOB_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_T_C ON DBSWITCH_TRIGGERS (SCHED_NAME, CALENDAR_NAME);
|
||||
CREATE INDEX IDX_DBSWITCH_T_G ON DBSWITCH_TRIGGERS (SCHED_NAME, TRIGGER_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_T_STATE ON DBSWITCH_TRIGGERS (SCHED_NAME, TRIGGER_STATE);
|
||||
CREATE INDEX IDX_DBSWITCH_T_N_STATE ON DBSWITCH_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP, TRIGGER_STATE);
|
||||
CREATE INDEX IDX_DBSWITCH_T_N_G_STATE ON DBSWITCH_TRIGGERS (SCHED_NAME, TRIGGER_GROUP, TRIGGER_STATE);
|
||||
CREATE INDEX IDX_DBSWITCH_T_NEXT_FIRE_TIME ON DBSWITCH_TRIGGERS (SCHED_NAME, NEXT_FIRE_TIME);
|
||||
CREATE INDEX IDX_DBSWITCH_T_NFT_ST ON DBSWITCH_TRIGGERS (SCHED_NAME, TRIGGER_STATE, NEXT_FIRE_TIME);
|
||||
CREATE INDEX IDX_DBSWITCH_T_NFT_MISFIRE ON DBSWITCH_TRIGGERS (SCHED_NAME, MISFIRE_INSTR, NEXT_FIRE_TIME);
|
||||
CREATE INDEX IDX_DBSWITCH_T_NFT_ST_MISFIRE ON DBSWITCH_TRIGGERS (SCHED_NAME, MISFIRE_INSTR, NEXT_FIRE_TIME, TRIGGER_STATE);
|
||||
CREATE INDEX IDX_QRTZ_T_NFT_ST_MISFIRE_GRP ON DBSWITCH_TRIGGERS (SCHED_NAME, MISFIRE_INSTR, NEXT_FIRE_TIME, TRIGGER_GROUP, TRIGGER_STATE);
|
||||
CREATE INDEX IDX_DBSWITCH_FT_TRIG_INST_NAME ON DBSWITCH_FIRED_TRIGGERS (SCHED_NAME, INSTANCE_NAME);
|
||||
CREATE INDEX IDX_DBSWITCH_FT_INST_JOB_REQ_RCVRY ON DBSWITCH_FIRED_TRIGGERS (SCHED_NAME, INSTANCE_NAME, REQUESTS_RECOVERY);
|
||||
CREATE INDEX IDX_DBSWITCH_FT_J_G ON DBSWITCH_FIRED_TRIGGERS (SCHED_NAME, JOB_NAME, JOB_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_FT_JG ON DBSWITCH_FIRED_TRIGGERS (SCHED_NAME, JOB_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_FT_T_G ON DBSWITCH_FIRED_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP);
|
||||
CREATE INDEX IDX_DBSWITCH_FT_TG ON DBSWITCH_FIRED_TRIGGERS (SCHED_NAME, TRIGGER_GROUP);
|
||||
|
||||
COMMIT;
|
||||
|
@@ -61,7 +61,6 @@ CREATE TABLE IF NOT EXISTS DBSWITCH_DATABASE_CONNECTION (
|
||||
"type" varchar(200) not null default '',
|
||||
"version" varchar(255) not null default '',
|
||||
"driver" varchar(200) not null default '',
|
||||
"mode" varchar(20) not null default '0',
|
||||
"address" varchar(200) not null default '',
|
||||
"port" varchar(20) not null default '0',
|
||||
"database_name" varchar(200) not null default '',
|
||||
@@ -80,7 +79,6 @@ COMMENT ON COLUMN DBSWITCH_DATABASE_CONNECTION."name" IS '连接名称';
|
||||
COMMENT ON COLUMN DBSWITCH_DATABASE_CONNECTION."type" IS '数据库类型';
|
||||
COMMENT ON COLUMN DBSWITCH_DATABASE_CONNECTION."version" IS '驱动版本';
|
||||
COMMENT ON COLUMN DBSWITCH_DATABASE_CONNECTION."driver" IS '驱动类名称';
|
||||
COMMENT ON COLUMN DBSWITCH_DATABASE_CONNECTION."mode" IS '连接模式:0默认 1专业';
|
||||
COMMENT ON COLUMN DBSWITCH_DATABASE_CONNECTION."address" IS '连接地址';
|
||||
COMMENT ON COLUMN DBSWITCH_DATABASE_CONNECTION."port" IS '连接端口号';
|
||||
COMMENT ON COLUMN DBSWITCH_DATABASE_CONNECTION."database_name" IS '数据库名';
|
||||
|
@@ -1 +1 @@
|
||||
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><title>异构数据迁移工具</title><link href=/static/css/app.f0e8b5065a7b737d46659aa49052e78a.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=/static/js/manifest.abc11e34d797dee7d4d2.js></script><script type=text/javascript src=/static/js/vendor.8200341f98478c8f7552.js></script><script type=text/javascript src=/static/js/app.36911b44fc7ed34e7641.js></script></body></html>
|
||||
<!DOCTYPE html><html><head><meta charset=utf-8><meta name=viewport content="width=device-width,initial-scale=1"><title>异构数据迁移工具</title><link href=/static/css/app.b7354ab5f63d44a80b8f75636e1e0abc.css rel=stylesheet></head><body><div id=app></div><script type=text/javascript src=/static/js/manifest.78b2138895a8f35eeff6.js></script><script type=text/javascript src=/static/js/vendor.8200341f98478c8f7552.js></script><script type=text/javascript src=/static/js/app.df5c26834a81c347a509.js></script></body></html>
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,2 @@
|
||||
webpackJsonp([13],{"+HtE":function(e,a,t){"use strict";Object.defineProperty(a,"__esModule",{value:!0});var o={data:function(){return{activeNames:["1"],currentDate:new Date,databaseType:[],selectedIndex:-1,dataSourceInfo:{name:"",type:"",typeName:"",version:"",driver:"",address:"",port:"",databaseName:"",characterEncoding:"",url:"",username:"",password:""}}},methods:{cancel:function(){this.$router.push("/connection/list")}},created:function(){this.dataSourceInfo=this.$route.query}},r={render:function(){var e=this,a=e.$createElement,o=e._self._c||a;return o("div",[o("el-card",[o("el-header",{staticStyle:{height:"80px"}},[o("div",{staticStyle:{display:"inline-block",float:"left"}},[o("img",{staticClass:"image",attrs:{title:"DB",src:t("V5bU")("./"+this.dataSourceInfo.typeName+".png")}})]),e._v(" "),o("h3",{staticClass:".h-title"},[e._v(e._s(this.dataSourceInfo.typeName))])]),e._v(" "),o("el-main",[o("el-form",{attrs:{model:e.dataSourceInfo,"label-width":"120px","label-position":"right",size:"medium","status-icon":""}},[o("div",{staticClass:"f1"},[o("el-form-item",{staticStyle:{width:"40%"},attrs:{prop:"name",label:"数据源名称"}},[o("el-input",{attrs:{readonly:!0,placeholder:"请输入数据源名称","auto-complete":"off"},model:{value:e.dataSourceInfo.name,callback:function(a){e.$set(e.dataSourceInfo,"name",a)},expression:"dataSourceInfo.name"}})],1),e._v(" "),o("el-form-item",{attrs:{required:!0,label:"数据库类型"}},[o("label",[e._v(e._s(this.dataSourceInfo.typeName))])]),e._v(" "),o("el-form-item",{staticStyle:{width:"40%"},attrs:{prop:"version",label:"驱动版本"}},[o("el-input",{attrs:{placeholder:"请选择驱动版本","auto-complete":"off",readonly:!0},model:{value:e.dataSourceInfo.version,callback:function(a){e.$set(e.dataSourceInfo,"version",a)},expression:"dataSourceInfo.version"}})],1),e._v(" "),o("el-form-item",{attrs:{label:"编码格式"}},[o("label",[e._v(e._s(e.dataSourceInfo.characterEncoding))])]),e._v(" "),o("el-form-item",{attrs:{prop:"address",label:"连接地址"}},[o("el-input",{staticStyle:{width:"30%"},attrs:{readonly:!0,"auto-complete":"off",placeholder:"请输入数据源连接地址"},model:{value:e.dataSourceInfo.address,callback:function(a){e.$set(e.dataSourceInfo,"address",a)},expression:"dataSourceInfo.address"}}),e._v("\n :\n "),o("el-input",{staticStyle:{width:"10%"},attrs:{readonly:!0,"auto-complete":"off",placeholder:"请输入端口"},model:{value:e.dataSourceInfo.port,callback:function(a){e.$set(e.dataSourceInfo,"port",a)},expression:"dataSourceInfo.port"}})],1),e._v(" "),o("el-form-item",{staticStyle:{width:"24%"},attrs:{prop:"databaseName",label:"数据库名"}},[o("el-input",{attrs:{readonly:!0,"auto-complete":"off",placeholder:"请输入数据库名"},model:{value:e.dataSourceInfo.databaseName,callback:function(a){e.$set(e.dataSourceInfo,"databaseName",a)},expression:"dataSourceInfo.databaseName"}})],1),e._v(" "),o("el-form-item",{staticStyle:{width:"24%"},attrs:{label:"编码格式"}},[o("el-input",{attrs:{readonly:!0,"auto-complete":"off",placeholder:"请选择编码格式"},model:{value:e.dataSourceInfo.characterEncoding,callback:function(a){e.$set(e.dataSourceInfo,"characterEncoding",a)},expression:"dataSourceInfo.characterEncoding"}})],1),e._v(" "),o("el-form-item",{staticStyle:{width:"24%"},attrs:{label:"用户名",prop:"username"}},[o("el-input",{attrs:{readonly:!0,"auto-complete":"off"},model:{value:e.dataSourceInfo.username,callback:function(a){e.$set(e.dataSourceInfo,"username",a)},expression:"dataSourceInfo.username"}})],1),e._v(" "),o("el-form-item",{staticStyle:{width:"24%"},attrs:{label:"密码",prop:"password"}},[o("el-input",{attrs:{readonly:!0,type:"password","auto-complete":"off"},model:{value:e.dataSourceInfo.password,callback:function(a){e.$set(e.dataSourceInfo,"password",a)},expression:"dataSourceInfo.password"}})],1),e._v(" "),o("el-form-item",{staticStyle:{width:"85%"},attrs:{label:"JDBC连接串","label-width":"120px",prop:"url"}},[o("el-input",{attrs:{readonly:!0,type:"textarea",rows:6,spellcheck:!1,placeholder:"请输入","auto-complete":"off"},model:{value:e.dataSourceInfo.url,callback:function(a){e.$set(e.dataSourceInfo,"url",a)},expression:"dataSourceInfo.url"}})],1)],1)])],1),e._v(" "),o("el-footer",[o("el-row",{staticStyle:{"text-align":"center"}},[o("el-button",{staticClass:"cancel",on:{click:e.cancel}},[e._v("取消")])],1)],1)],1)],1)},staticRenderFns:[]};var l=t("VU/8")(o,r,!1,function(e){t("Zhaf")},"data-v-990cab3c",null);a.default=l.exports},Zhaf:function(e,a){}});
|
||||
//# sourceMappingURL=13.6176c3b6cf9886031ee7.js.map
|
File diff suppressed because one or more lines are too long
@@ -1,2 +1,2 @@
|
||||
webpackJsonp([13],{"2PhG":function(t,e){},oQRv:function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n={data:function(){return{loading:!0,lists:[],currentPage:1,pageSize:10,totalCount:0}},methods:{loadData:function(){var t=this;this.$http.get("/dbswitch/admin/api/v1/syslog/list/1/"+this.currentPage+"/"+this.pageSize).then(function(e){t.loading=!1,0===e.data.code?(t.currentPage=e.data.pagination.page,t.pageSize=e.data.pagination.size,t.totalCount=e.data.pagination.total,t.lists=e.data.data):alert("加载数据失败:"+e.data.message)},function(e){t.$message({showClose:!0,message:"数据加载错误",type:"error"})})},handleSizeChange:function(t){this.loading=!0,this.pageSize=t,this.loadData()},handleCurrentChange:function(t){this.loading=!0,this.currentPage=t,this.loadData()}},created:function(){this.loadData()}},i={render:function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticStyle:{"margin-top":"15px"}},[a("el-table",{directives:[{name:"loading",rawName:"v-loading",value:t.loading,expression:"loading"}],staticStyle:{width:"100%"},attrs:{"header-cell-style":{background:"#eef1f6",color:"#606266"},"element-loading-text":"拼命加载中","element-loading-spinner":"el-icon-loading","element-loading-background":"rgba(0, 0, 0, 0.8)",data:t.lists,stripe:"",size:"small",border:""}},[a("el-table-column",{attrs:{prop:"createTime",label:"日志时间","min-width":"15%","show-overflow-tooltip":!0}}),t._v(" "),a("el-table-column",{attrs:{prop:"ipAddress",label:"请求IP","min-width":"10%","show-overflow-tooltip":!0}}),t._v(" "),a("el-table-column",{attrs:{prop:"content",label:"操作内容","min-width":"20%","show-overflow-tooltip":!0}}),t._v(" "),a("el-table-column",{attrs:{prop:"userAgent",label:"请求代理","min-width":"50%","show-overflow-tooltip":!0}})],1),t._v(" "),a("div",{staticClass:"page",attrs:{align:"right"}},[a("el-pagination",{attrs:{"current-page":t.currentPage,"page-sizes":[5,10,20,40],"page-size":t.pageSize,layout:"total, sizes, prev, pager, next, jumper",total:t.totalCount},on:{"size-change":t.handleSizeChange,"current-change":t.handleCurrentChange}})],1)],1)},staticRenderFns:[]};var o=a("VU/8")(n,i,!1,function(t){a("2PhG")},"data-v-86686ab2",null);e.default=o.exports}});
|
||||
//# sourceMappingURL=13.522b8e9b509523953170.js.map
|
||||
webpackJsonp([14],{"2PhG":function(t,e){},oQRv:function(t,e,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n={data:function(){return{loading:!0,lists:[],currentPage:1,pageSize:10,totalCount:0}},methods:{loadData:function(){var t=this;this.$http.get("/dbswitch/admin/api/v1/syslog/list/1/"+this.currentPage+"/"+this.pageSize).then(function(e){t.loading=!1,0===e.data.code?(t.currentPage=e.data.pagination.page,t.pageSize=e.data.pagination.size,t.totalCount=e.data.pagination.total,t.lists=e.data.data):alert("加载数据失败:"+e.data.message)},function(e){t.$message({showClose:!0,message:"数据加载错误",type:"error"})})},handleSizeChange:function(t){this.loading=!0,this.pageSize=t,this.loadData()},handleCurrentChange:function(t){this.loading=!0,this.currentPage=t,this.loadData()}},created:function(){this.loadData()}},i={render:function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticStyle:{"margin-top":"15px"}},[a("el-table",{directives:[{name:"loading",rawName:"v-loading",value:t.loading,expression:"loading"}],staticStyle:{width:"100%"},attrs:{"header-cell-style":{background:"#eef1f6",color:"#606266"},"element-loading-text":"拼命加载中","element-loading-spinner":"el-icon-loading","element-loading-background":"rgba(0, 0, 0, 0.8)",data:t.lists,stripe:"",size:"small",border:""}},[a("el-table-column",{attrs:{prop:"createTime",label:"日志时间","min-width":"15%","show-overflow-tooltip":!0}}),t._v(" "),a("el-table-column",{attrs:{prop:"ipAddress",label:"请求IP","min-width":"10%","show-overflow-tooltip":!0}}),t._v(" "),a("el-table-column",{attrs:{prop:"content",label:"操作内容","min-width":"20%","show-overflow-tooltip":!0}}),t._v(" "),a("el-table-column",{attrs:{prop:"userAgent",label:"请求代理","min-width":"50%","show-overflow-tooltip":!0}})],1),t._v(" "),a("div",{staticClass:"page",attrs:{align:"right"}},[a("el-pagination",{attrs:{"current-page":t.currentPage,"page-sizes":[5,10,20,40],"page-size":t.pageSize,layout:"total, sizes, prev, pager, next, jumper",total:t.totalCount},on:{"size-change":t.handleSizeChange,"current-change":t.handleCurrentChange}})],1)],1)},staticRenderFns:[]};var o=a("VU/8")(n,i,!1,function(t){a("2PhG")},"data-v-86686ab2",null);e.default=o.exports}});
|
||||
//# sourceMappingURL=14.572f60f49a9868fcd0fe.js.map
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,2 +1,2 @@
|
||||
webpackJsonp([19],{TT6I:function(t,e){},WfA7:function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a={data:function(){return{dialogVisible:!1,loading:!0,connectionTypes:[],versionDrivers:[],isActive:-1}},methods:{loadConnectionTypes:function(){var t=this;this.$http({method:"GET",url:"/dbswitch/admin/api/v1/connection/types"}).then(function(e){0===e.data.code?(t.connectionTypes=e.data.data,t.handleChooseClick("MYSQL",0)):e.data.message&&alert("初始化数据库类型信息失败:"+e.data.message)})},handleChooseClick:function(t,e){var i=this;this.isActive=e,this.$http.get("/dbswitch/admin/api/v1/connection/"+t+"/drivers").then(function(t){0===t.data.code?i.versionDrivers=t.data.data:t.data.message&&alert("查询驱动版本信息失败,"+t.data.message)})},handleClose:function(t){this.$confirm("确认关闭?").then(function(e){t()}).catch(function(t){})},formatJarFileList:function(t,e){return t[e.property].join(";\n")}},created:function(){this.loadConnectionTypes()},beforeDestroy:function(){}},n={render:function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[i("el-card",[i("div",{staticClass:"container"},[i("el-card",{staticClass:"box-card"},[i("div",{staticClass:"clearfix",attrs:{slot:"header",align:"center"},slot:"header"},[i("span",[i("b",[t._v("数据库产品类型列表")])])]),t._v(" "),i("div",{staticClass:"navsBox"},[i("el-scrollbar",{staticStyle:{height:"600px"}},[i("ul",t._l(t.connectionTypes,function(e,a){return i("li",{key:a,class:{active:a==t.isActive},on:{click:function(i){return t.handleChooseClick(e.type,a)}}},[t._v("["+t._s(e.id)+"] "+t._s(e.name)+"\n ")])}),0)])],1)]),t._v(" "),i("div",{staticClass:"contentBox"},[i("div",{staticStyle:{margin:"10px 5px"},attrs:{align:"right",width:"95%"}},[i("el-button",{attrs:{type:"primary",size:"mini",icon:"el-icon-document-add"},on:{click:function(e){t.dialogVisible=!0}}},[t._v("添加\n ")])],1),t._v(" "),i("el-table",{attrs:{"header-cell-style":{background:"#eef1f6",color:"#606266"},data:t.versionDrivers,size:"small",stripe:"",border:""}},[i("template",{slot:"empty"},[i("span",[t._v("单击左侧数据库类型来查看对应的驱动版本信息")])]),t._v(" "),i("el-table-column",{attrs:{property:"driverVersion",label:"驱动版本号","min-width":"30%"}}),t._v(" "),i("el-table-column",{attrs:{property:"driverClass",label:"驱动类名","min-width":"30%"}}),t._v(" "),i("el-table-column",{attrs:{property:"jarFiles",formatter:t.formatJarFileList,label:"驱动JAR名称","min-width":"40%"}})],2)],1)],1)]),t._v(" "),i("el-dialog",{attrs:{title:"添加说明",visible:t.dialogVisible,width:"40%","before-close":t.handleClose},on:{"update:visible":function(e){t.dialogVisible=e}}},[i("span",[t._v("请按照驱动路径所在的目录${DBSWITCH_HOME}/drivers下,在数据库类型为名称的目录下,以驱动版本号为名称创建目录并放置对应的驱动jar文件,然后重启即可生效。具体可参考https://gitee.com/inrgihc/dbswitch/tree/master/drivers下的目录结构。")]),t._v(" "),i("span"),t._v(" "),i("span",[t._v("特殊说明:驱动版本目录下的所有JAR必须无任何外部依赖,否则,也需将其依赖JAR一起放置到对应的目录下。")]),t._v(" "),i("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[i("el-button",{on:{click:function(e){t.dialogVisible=!1}}},[t._v("取 消")]),t._v(" "),i("el-button",{attrs:{type:"primary"},on:{click:function(e){t.dialogVisible=!1}}},[t._v("确 定")])],1)])],1)},staticRenderFns:[]};var s=i("VU/8")(a,n,!1,function(t){i("TT6I")},"data-v-34e9157e",null);e.default=s.exports}});
|
||||
//# sourceMappingURL=19.dd345b856062984bc737.js.map
|
||||
webpackJsonp([20],{TT6I:function(t,e){},WfA7:function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a={data:function(){return{dialogVisible:!1,loading:!0,connectionTypes:[],versionDrivers:[],isActive:-1}},methods:{loadConnectionTypes:function(){var t=this;this.$http({method:"GET",url:"/dbswitch/admin/api/v1/connection/types"}).then(function(e){0===e.data.code?(t.connectionTypes=e.data.data,t.handleChooseClick("MYSQL",0)):e.data.message&&alert("初始化数据库类型信息失败:"+e.data.message)})},handleChooseClick:function(t,e){var i=this;this.isActive=e,this.$http.get("/dbswitch/admin/api/v1/connection/"+t+"/drivers").then(function(t){0===t.data.code?i.versionDrivers=t.data.data:t.data.message&&alert("查询驱动版本信息失败,"+t.data.message)})},handleClose:function(t){this.$confirm("确认关闭?").then(function(e){t()}).catch(function(t){})},formatJarFileList:function(t,e){return t[e.property].join(";\n")}},created:function(){this.loadConnectionTypes()},beforeDestroy:function(){}},n={render:function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",[i("el-card",[i("div",{staticClass:"container"},[i("el-card",{staticClass:"box-card"},[i("div",{staticClass:"clearfix",attrs:{slot:"header",align:"center"},slot:"header"},[i("span",[i("b",[t._v("数据库产品类型列表")])])]),t._v(" "),i("div",{staticClass:"navsBox"},[i("el-scrollbar",{staticStyle:{height:"600px"}},[i("ul",t._l(t.connectionTypes,function(e,a){return i("li",{key:a,class:{active:a==t.isActive},on:{click:function(i){return t.handleChooseClick(e.type,a)}}},[t._v("["+t._s(e.id)+"] "+t._s(e.name)+"\n ")])}),0)])],1)]),t._v(" "),i("div",{staticClass:"contentBox"},[i("div",{staticStyle:{margin:"10px 5px"},attrs:{align:"right",width:"95%"}},[i("el-button",{attrs:{type:"primary",size:"mini",icon:"el-icon-document-add"},on:{click:function(e){t.dialogVisible=!0}}},[t._v("添加\n ")])],1),t._v(" "),i("el-table",{attrs:{"header-cell-style":{background:"#eef1f6",color:"#606266"},data:t.versionDrivers,size:"small",stripe:"",border:""}},[i("template",{slot:"empty"},[i("span",[t._v("单击左侧数据库类型来查看对应的驱动版本信息")])]),t._v(" "),i("el-table-column",{attrs:{property:"driverVersion",label:"驱动版本号","min-width":"30%"}}),t._v(" "),i("el-table-column",{attrs:{property:"driverClass",label:"驱动类名","min-width":"30%"}}),t._v(" "),i("el-table-column",{attrs:{property:"jarFiles",formatter:t.formatJarFileList,label:"驱动JAR名称","min-width":"40%"}})],2)],1)],1)]),t._v(" "),i("el-dialog",{attrs:{title:"添加说明",visible:t.dialogVisible,width:"40%","before-close":t.handleClose},on:{"update:visible":function(e){t.dialogVisible=e}}},[i("span",[t._v("请按照驱动路径所在的目录${DBSWITCH_HOME}/drivers下,在数据库类型为名称的目录下,以驱动版本号为名称创建目录并放置对应的驱动jar文件,然后重启即可生效。具体可参考https://gitee.com/inrgihc/dbswitch/tree/master/drivers下的目录结构。")]),t._v(" "),i("span"),t._v(" "),i("span",[t._v("特殊说明:驱动版本目录下的所有JAR必须无任何外部依赖,否则,也需将其依赖JAR一起放置到对应的目录下。")]),t._v(" "),i("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[i("el-button",{on:{click:function(e){t.dialogVisible=!1}}},[t._v("取 消")]),t._v(" "),i("el-button",{attrs:{type:"primary"},on:{click:function(e){t.dialogVisible=!1}}},[t._v("确 定")])],1)])],1)},staticRenderFns:[]};var s=i("VU/8")(a,n,!1,function(t){i("TT6I")},"data-v-34e9157e",null);e.default=s.exports}});
|
||||
//# sourceMappingURL=20.0b81af042044c5cf2ee5.js.map
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,2 +1,2 @@
|
||||
webpackJsonp([21],{P78X:function(e,t){},"Vr+S":function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=a("fZjL"),s=a.n(n),i={data:function(){return{activeNames:["1"],currentDate:new Date,databaseType:[],selectedIndex:-1,selectedDataSource:{}}},methods:{loadDatabaseTypes:function(){var e=this;this.databaseType=[],this.$http({method:"GET",url:"/dbswitch/admin/api/v1/connection/types"}).then(function(t){0===t.data.code?e.databaseType=t.data.data:alert("加载任务列表失败:"+t.data.message)},function(){console.log("failed")})},selectChangedDriverVersion:function(e){var t=this;this.connectionDriver=[],this.$http.get("/dbswitch/admin/api/v1/connection/"+e+"/drivers").then(function(a){if(0===a.data.code){t.connectionDriver=a.data.data;var n=t.databaseType.find(function(t){return t.type===e});n&&(t.createform.sample=n.sample)}else t.$message.error("查询数据库可用的驱动版本失败,"+a.data.message),t.connectionDriver=[]})},selectDbDriver:function(e){this.selectedIndex=e.id-1,this.selectedDataSource=e},next:function(){0===s()(this.selectedDataSource).length?this.$message.error("请选择数据库!"):this.$router.push({path:"/connection/list/addDataSource2",query:this.selectedDataSource})},cancel:function(){this.$router.push("/connection/list")}},created:function(){this.loadDatabaseTypes()}},c={render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("el-card",[n("el-header",[n("h3",{staticClass:".h-title"},[e._v("请选择数据源类型")])]),e._v(" "),n("el-main",[n("el-collapse",{model:{value:e.activeNames,callback:function(t){e.activeNames=t},expression:"activeNames"}},[n("el-collapse-item",{attrs:{name:"1"}},[n("template",{slot:"title"},[n("span",{staticClass:"sub-title"},[e._v("数据库")])]),e._v(" "),n("div",[n("el-row",e._l(e.databaseType,function(t,s){return n("el-col",{key:s,attrs:{span:4,offset:1}},[n("div",{staticStyle:{"margin-top":"20px",cursor:"pointer"}},[n("el-card",{staticClass:"card-item",class:e.selectedIndex===s?"active":"",attrs:{"body-style":{padding:"0px"},shadow:"hover"},nativeOn:{click:function(a){return e.selectDbDriver(t)}}},[n("div",{staticStyle:{display:"inline-block",float:"left"}},[n("img",{staticClass:"image",attrs:{title:"",src:a("V5bU")("./"+t.name+".png")}})]),e._v(" "),n("div",{staticStyle:{display:"inline-block",float:"left",padding:"10px 0px 0px 10px"}},[n("span",[e._v(e._s(t.name))]),n("br")])])],1)])}),1)],1)],2)],1)],1),e._v(" "),n("el-footer",[n("el-row",[n("el-button",{staticClass:"next",attrs:{type:"primary"},on:{click:e.next}},[e._v("下一步")]),e._v(" "),n("el-button",{staticClass:"cancel",on:{click:e.cancel}},[e._v("取消")])],1)],1)],1)},staticRenderFns:[]};var l=a("VU/8")(i,c,!1,function(e){a("P78X")},"data-v-028fc529",null);t.default=l.exports}});
|
||||
//# sourceMappingURL=21.5bf6235c9914a933db4d.js.map
|
||||
webpackJsonp([22],{P78X:function(e,t){},"Vr+S":function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=a("fZjL"),s=a.n(n),i={data:function(){return{activeNames:["1"],currentDate:new Date,databaseType:[],selectedIndex:-1,selectedDataSource:{}}},methods:{loadDatabaseTypes:function(){var e=this;this.databaseType=[],this.$http({method:"GET",url:"/dbswitch/admin/api/v1/connection/types"}).then(function(t){0===t.data.code?e.databaseType=t.data.data:alert("加载任务列表失败:"+t.data.message)},function(){console.log("failed")})},selectChangedDriverVersion:function(e){var t=this;this.connectionDriver=[],this.$http.get("/dbswitch/admin/api/v1/connection/"+e+"/drivers").then(function(a){if(0===a.data.code){t.connectionDriver=a.data.data;var n=t.databaseType.find(function(t){return t.type===e});n&&(t.createform.sample=n.sample)}else t.$message.error("查询数据库可用的驱动版本失败,"+a.data.message),t.connectionDriver=[]})},selectDbDriver:function(e){this.selectedIndex=e.id-1,this.selectedDataSource=e},next:function(){0===s()(this.selectedDataSource).length?this.$message.error("请选择数据库!"):this.$router.push({path:"/connection/list/addDataSource2",query:this.selectedDataSource})},cancel:function(){this.$router.push("/connection/list")}},created:function(){this.loadDatabaseTypes()}},c={render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("el-card",[n("el-header",[n("h3",{staticClass:".h-title"},[e._v("请选择数据源类型")])]),e._v(" "),n("el-main",[n("el-collapse",{model:{value:e.activeNames,callback:function(t){e.activeNames=t},expression:"activeNames"}},[n("el-collapse-item",{attrs:{name:"1"}},[n("template",{slot:"title"},[n("span",{staticClass:"sub-title"},[e._v("数据库")])]),e._v(" "),n("div",[n("el-row",e._l(e.databaseType,function(t,s){return n("el-col",{key:s,attrs:{span:4,offset:1}},[n("div",{staticStyle:{"margin-top":"20px",cursor:"pointer"}},[n("el-card",{staticClass:"card-item",class:e.selectedIndex===s?"active":"",attrs:{"body-style":{padding:"0px"},shadow:"hover"},nativeOn:{click:function(a){return e.selectDbDriver(t)}}},[n("div",{staticStyle:{display:"inline-block",float:"left"}},[n("img",{staticClass:"image",attrs:{title:"",src:a("V5bU")("./"+t.name+".png")}})]),e._v(" "),n("div",{staticStyle:{display:"inline-block",float:"left",padding:"10px 0px 0px 10px"}},[n("span",[e._v(e._s(t.name))]),n("br")])])],1)])}),1)],1)],2)],1)],1),e._v(" "),n("el-footer",[n("el-row",[n("el-button",{staticClass:"next",attrs:{type:"primary"},on:{click:e.next}},[e._v("下一步")]),e._v(" "),n("el-button",{staticClass:"cancel",on:{click:e.cancel}},[e._v("取消")])],1)],1)],1)},staticRenderFns:[]};var l=a("VU/8")(i,c,!1,function(e){a("P78X")},"data-v-028fc529",null);t.default=l.exports}});
|
||||
//# sourceMappingURL=22.b623f8b56b9a9aa1c02b.js.map
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,2 +1,2 @@
|
||||
webpackJsonp([24],{NHnr:function(n,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=t("//Fk"),i=t.n(o),c=t("7+uW"),a={render:function(){var n=this.$createElement,e=this._self._c||n;return e("div",{staticClass:"body-wrapper"},[e("router-view")],1)},staticRenderFns:[]};var r=t("VU/8")({name:"App"},a,!1,function(n){t("O8ez")},"data-v-a97617c2",null).exports,u=t("/ocq");c.default.use(u.a);var l=new u.a({routes:[{path:"/",name:"首页",component:function(){return t.e(5).then(t.bind(null,"4er+"))},redirect:"/dashboard",children:[{path:"/dashboard",name:"系统概览",icon:"el-icon-menu",component:function(){return Promise.all([t.e(0),t.e(9)]).then(t.bind(null,"ARoL"))}},{path:"/connection",name:"连接管理",icon:"el-icon-s-order",component:function(){return t.e(8).then(t.bind(null,"Hoc+"))},children:[{path:"/connection/list",name:"数据源",icon:"el-icon-bank-card",component:function(){return Promise.all([t.e(0),t.e(17)]).then(t.bind(null,"qdtB"))}},{path:"/connection/driver",name:"驱动配置",icon:"el-icon-help",component:function(){return t.e(19).then(t.bind(null,"WfA7"))}}]},{path:"/metadata",name:"数据导航",icon:"el-icon-coin",component:function(){return Promise.all([t.e(0),t.e(1)]).then(t.bind(null,"PJ2q"))}},{path:"/task",name:"数据接入",icon:"el-icon-s-tools",component:function(){return t.e(6).then(t.bind(null,"4KEO"))},children:[{path:"/task/assignment",name:"任务管理",icon:"el-icon-eleme",component:function(){return Promise.all([t.e(0),t.e(20)]).then(t.bind(null,"D0I9"))}},{path:"/task/schedule",name:"监控调度",icon:"el-icon-pie-chart",component:function(){return Promise.all([t.e(0),t.e(10)]).then(t.bind(null,"mKp/"))}}]},{path:"/log",name:"审计日志",icon:"el-icon-platform-eleme",component:function(){return t.e(7).then(t.bind(null,"QWih"))},children:[{path:"/log/access",name:"登录日志",icon:"el-icon-place",component:function(){return t.e(13).then(t.bind(null,"oQRv"))}},{path:"/log/action",name:"操作日志",icon:"el-icon-s-check",component:function(){return t.e(12).then(t.bind(null,"0eSS"))}}]},{path:"/about",name:"关于系统",icon:"el-icon-s-custom",component:function(){return t.e(4).then(t.bind(null,"m25N"))}},{path:"/user/personal",name:"个人中心",hidden:!0,component:function(){return t.e(2).then(t.bind(null,"uTKz"))}},{path:"/task/create",name:"创建任务",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(14)]).then(t.bind(null,"/rCC"))}},{path:"/task/update",name:"修改任务",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(16)]).then(t.bind(null,"txod"))}},{path:"/task/detail",name:"查看任务",hidden:!0,component:function(){return t.e(11).then(t.bind(null,"nrt7"))}},{path:"/connection/list/addDataSource1",name:"数据源创建步骤1",icon:"el-icon-menu",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(21)]).then(t.bind(null,"Vr+S"))}},{path:"/connection/list/addDataSource2",name:"数据源创建步骤2",icon:"el-icon-menu",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(22)]).then(t.bind(null,"7aEP"))}},{path:"/connection/list/dataSourceInfo",name:"数据源详情",icon:"el-icon-menu",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(18)]).then(t.bind(null,"+HtE"))}},{path:"/connection/list/updateDataSource",name:"编辑数据源",icon:"el-icon-menu",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(15)]).then(t.bind(null,"QTjM"))}}]},{path:"/login",name:"登录",component:function(){return t.e(3).then(t.bind(null,"T+/8"))}}]}),d=t("mtWM"),p=t.n(d).a.create();p.interceptors.request.use(function(n){return n.url=""+n.url,n});var m=p,s=t("zL8q"),h=t.n(s),f=(t("muQq"),t("tvR6"),t("7Vno")),b=t.n(f),v=t("XLwt"),P=t.n(v);c.default.use(m),c.default.use(h.a),c.default.use(b.a),c.default.prototype.$http=m,c.default.config.productionTip=!1,c.default.prototype.$echarts=P.a,m.interceptors.request.use(function(n){var e=sessionStorage.getItem("token");return e&&(n.headers.Authorization="Bearer "+e),n},function(n){return i.a.reject(n)}),m.interceptors.response.use(function(n){return!n.data||401!==n.data.code&&403!==n.data.code&&404!==n.data.code||l.push({path:"/login"}),n},function(n){return console.log(n),i.a.reject(n.response)}),new c.default({el:"#app",router:l,components:{App:r},template:"<App/>"})},O8ez:function(n,e){},muQq:function(n,e){},tvR6:function(n,e){}},["NHnr"]);
|
||||
//# sourceMappingURL=app.36911b44fc7ed34e7641.js.map
|
||||
webpackJsonp([24],{NHnr:function(n,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var o=t("//Fk"),i=t.n(o),c=t("7+uW"),a={render:function(){var n=this.$createElement,e=this._self._c||n;return e("div",{staticClass:"body-wrapper"},[e("router-view")],1)},staticRenderFns:[]};var r=t("VU/8")({name:"App"},a,!1,function(n){t("O8ez")},"data-v-a97617c2",null).exports,u=t("/ocq");c.default.use(u.a);var l=new u.a({routes:[{path:"/",name:"首页",component:function(){return t.e(5).then(t.bind(null,"4er+"))},redirect:"/dashboard",children:[{path:"/dashboard",name:"系统概览",icon:"el-icon-menu",component:function(){return Promise.all([t.e(0),t.e(9)]).then(t.bind(null,"ARoL"))}},{path:"/connection",name:"连接管理",icon:"el-icon-s-order",component:function(){return t.e(8).then(t.bind(null,"Hoc+"))},children:[{path:"/connection/list",name:"数据源",icon:"el-icon-bank-card",component:function(){return Promise.all([t.e(0),t.e(17)]).then(t.bind(null,"qdtB"))}},{path:"/connection/driver",name:"驱动配置",icon:"el-icon-help",component:function(){return t.e(20).then(t.bind(null,"WfA7"))}}]},{path:"/metadata",name:"数据导航",icon:"el-icon-coin",component:function(){return Promise.all([t.e(0),t.e(1)]).then(t.bind(null,"PJ2q"))}},{path:"/task",name:"迁移任务",icon:"el-icon-s-tools",component:function(){return t.e(6).then(t.bind(null,"4KEO"))},children:[{path:"/task/assignment",name:"任务管理",icon:"el-icon-eleme",component:function(){return Promise.all([t.e(0),t.e(18)]).then(t.bind(null,"D0I9"))}},{path:"/task/schedule",name:"监控调度",icon:"el-icon-pie-chart",component:function(){return Promise.all([t.e(0),t.e(10)]).then(t.bind(null,"mKp/"))}}]},{path:"/log",name:"审计日志",icon:"el-icon-platform-eleme",component:function(){return t.e(7).then(t.bind(null,"QWih"))},children:[{path:"/log/access",name:"登录日志",icon:"el-icon-place",component:function(){return t.e(14).then(t.bind(null,"oQRv"))}},{path:"/log/action",name:"操作日志",icon:"el-icon-s-check",component:function(){return t.e(12).then(t.bind(null,"0eSS"))}}]},{path:"/about",name:"关于系统",icon:"el-icon-s-custom",component:function(){return t.e(4).then(t.bind(null,"m25N"))}},{path:"/user/personal",name:"个人中心",hidden:!0,component:function(){return t.e(2).then(t.bind(null,"uTKz"))}},{path:"/task/create",name:"创建任务",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(15)]).then(t.bind(null,"/rCC"))}},{path:"/task/update",name:"修改任务",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(16)]).then(t.bind(null,"txod"))}},{path:"/task/detail",name:"查看任务",hidden:!0,component:function(){return t.e(11).then(t.bind(null,"nrt7"))}},{path:"/connection/list/addDataSource1",name:"数据源创建步骤1",icon:"el-icon-menu",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(22)]).then(t.bind(null,"Vr+S"))}},{path:"/connection/list/addDataSource2",name:"数据源创建步骤2",icon:"el-icon-menu",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(21)]).then(t.bind(null,"7aEP"))}},{path:"/connection/list/dataSourceInfo",name:"数据源详情",icon:"el-icon-menu",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(13)]).then(t.bind(null,"+HtE"))}},{path:"/connection/list/updateDataSource",name:"编辑数据源",icon:"el-icon-menu",hidden:!0,component:function(){return Promise.all([t.e(0),t.e(19)]).then(t.bind(null,"QTjM"))}}]},{path:"/login",name:"登录",component:function(){return t.e(3).then(t.bind(null,"T+/8"))}}]}),d=t("mtWM"),p=t.n(d).a.create();p.interceptors.request.use(function(n){return n.url=""+n.url,n});var m=p,s=t("zL8q"),h=t.n(s),f=(t("muQq"),t("tvR6"),t("7Vno")),b=t.n(f),v=t("XLwt"),P=t.n(v);c.default.use(m),c.default.use(h.a),c.default.use(b.a),c.default.prototype.$http=m,c.default.config.productionTip=!1,c.default.prototype.$echarts=P.a,m.interceptors.request.use(function(n){var e=sessionStorage.getItem("token");return e&&(n.headers.Authorization="Bearer "+e),n},function(n){return i.a.reject(n)}),m.interceptors.response.use(function(n){return!n.data||401!==n.data.code&&403!==n.data.code&&404!==n.data.code||l.push({path:"/login"}),n},function(n){return console.log(n),i.a.reject(n.response)}),new c.default({el:"#app",router:l,components:{App:r},template:"<App/>"})},O8ez:function(n,e){},muQq:function(n,e){},tvR6:function(n,e){}},["NHnr"]);
|
||||
//# sourceMappingURL=app.df5c26834a81c347a509.js.map
|
File diff suppressed because one or more lines are too long
@@ -0,0 +1,2 @@
|
||||
!function(e){var f=window.webpackJsonp;window.webpackJsonp=function(n,t,a){for(var o,d,i,u=0,b=[];u<n.length;u++)d=n[u],r[d]&&b.push(r[d][0]),r[d]=0;for(o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);for(f&&f(n,t,a);b.length;)b.shift()();if(a)for(u=0;u<a.length;u++)i=c(c.s=a[u]);return i};var n={},r={25:0};function c(f){if(n[f])return n[f].exports;var r=n[f]={i:f,l:!1,exports:{}};return e[f].call(r.exports,r,r.exports,c),r.l=!0,r.exports}c.e=function(e){var f=r[e];if(0===f)return new Promise(function(e){e()});if(f)return f[2];var n=new Promise(function(n,c){f=r[e]=[n,c]});f[2]=n;var t=document.getElementsByTagName("head")[0],a=document.createElement("script");a.type="text/javascript",a.charset="utf-8",a.async=!0,a.timeout=12e4,c.nc&&a.setAttribute("nonce",c.nc),a.src=c.p+"static/js/"+e+"."+{0:"9f5c7dfe2e2d505911a3",1:"fed755dff73c923d7f16",2:"22e821ec8c9909429f09",3:"ef5e983cf9ad9dc27899",4:"9489240be335f7dfd6fc",5:"de32c8bd9fcd7cba61b2",6:"d7f3aa182a9403e7c6f6",7:"2c3ef6028bafee6fbaca",8:"535ff4d6dbb1131433ea",9:"4590fe5acd44e077ba19",10:"1d1a99a89d92bca35121",11:"f1220d9f411fa31f402d",12:"f04608dc3d77cd7fb925",13:"6176c3b6cf9886031ee7",14:"572f60f49a9868fcd0fe",15:"21e55b001ce692c6eee9",16:"3d8d1b4a2cf253b6dcec",17:"68d3bb07f9efaf16b653",18:"d2bf2f7fea983faf99e8",19:"15fbe9341f6f097aaf3a",20:"0b81af042044c5cf2ee5",21:"f01836576ac2cf88e56c",22:"b623f8b56b9a9aa1c02b"}[e]+".js";var o=setTimeout(d,12e4);function d(){a.onerror=a.onload=null,clearTimeout(o);var f=r[e];0!==f&&(f&&f[1](new Error("Loading chunk "+e+" failed.")),r[e]=void 0)}return a.onerror=a.onload=d,t.appendChild(a),n},c.m=e,c.c=n,c.d=function(e,f,n){c.o(e,f)||Object.defineProperty(e,f,{configurable:!1,enumerable:!0,get:n})},c.n=function(e){var f=e&&e.__esModule?function(){return e.default}:function(){return e};return c.d(f,"a",f),f},c.o=function(e,f){return Object.prototype.hasOwnProperty.call(e,f)},c.p="/",c.oe=function(e){throw console.error(e),e}}([]);
|
||||
//# sourceMappingURL=manifest.78b2138895a8f35eeff6.js.map
|
File diff suppressed because one or more lines are too long
@@ -1,2 +0,0 @@
|
||||
!function(e){var c=window.webpackJsonp;window.webpackJsonp=function(n,f,o){for(var a,d,b,i=0,u=[];i<n.length;i++)d=n[i],r[d]&&u.push(r[d][0]),r[d]=0;for(a in f)Object.prototype.hasOwnProperty.call(f,a)&&(e[a]=f[a]);for(c&&c(n,f,o);u.length;)u.shift()();if(o)for(i=0;i<o.length;i++)b=t(t.s=o[i]);return b};var n={},r={25:0};function t(c){if(n[c])return n[c].exports;var r=n[c]={i:c,l:!1,exports:{}};return e[c].call(r.exports,r,r.exports,t),r.l=!0,r.exports}t.e=function(e){var c=r[e];if(0===c)return new Promise(function(e){e()});if(c)return c[2];var n=new Promise(function(n,t){c=r[e]=[n,t]});c[2]=n;var f=document.getElementsByTagName("head")[0],o=document.createElement("script");o.type="text/javascript",o.charset="utf-8",o.async=!0,o.timeout=12e4,t.nc&&o.setAttribute("nonce",t.nc),o.src=t.p+"static/js/"+e+"."+{0:"9f5c7dfe2e2d505911a3",1:"fed755dff73c923d7f16",2:"22e821ec8c9909429f09",3:"ef5e983cf9ad9dc27899",4:"483abcc3a4b8f904c65d",5:"de32c8bd9fcd7cba61b2",6:"d7f3aa182a9403e7c6f6",7:"2c3ef6028bafee6fbaca",8:"535ff4d6dbb1131433ea",9:"4590fe5acd44e077ba19",10:"1d1a99a89d92bca35121",11:"f1220d9f411fa31f402d",12:"f04608dc3d77cd7fb925",13:"522b8e9b509523953170",14:"5d055f12c2b831e53cd6",15:"9742967c21d37f7c493f",16:"3d8d1b4a2cf253b6dcec",17:"68d3bb07f9efaf16b653",18:"b6bf70f4f372e952d31f",19:"dd345b856062984bc737",20:"beeb2cdb187564a0c9fe",21:"5bf6235c9914a933db4d",22:"c4c6da570159683c5736"}[e]+".js";var a=setTimeout(d,12e4);function d(){o.onerror=o.onload=null,clearTimeout(a);var c=r[e];0!==c&&(c&&c[1](new Error("Loading chunk "+e+" failed.")),r[e]=void 0)}return o.onerror=o.onload=d,f.appendChild(o),n},t.m=e,t.c=n,t.d=function(e,c,n){t.o(e,c)||Object.defineProperty(e,c,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var c=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(c,"a",c),c},t.o=function(e,c){return Object.prototype.hasOwnProperty.call(e,c)},t.p="/",t.oe=function(e){throw console.error(e),e}}([]);
|
||||
//# sourceMappingURL=manifest.abc11e34d797dee7d4d2.js.map
|
@@ -1,142 +1,177 @@
|
||||
<assembly>
|
||||
|
||||
<id>${project.version}</id>
|
||||
<id>${project.version}</id>
|
||||
|
||||
<formats>
|
||||
<format>tar.gz</format>
|
||||
</formats>
|
||||
<formats>
|
||||
<format>tar.gz</format>
|
||||
</formats>
|
||||
|
||||
<includeBaseDirectory>true</includeBaseDirectory>
|
||||
<includeBaseDirectory>true</includeBaseDirectory>
|
||||
|
||||
<dependencySets>
|
||||
<dependencySet>
|
||||
<useProjectArtifact>true</useProjectArtifact>
|
||||
<outputDirectory>lib</outputDirectory>
|
||||
<excludes>
|
||||
<exclude>org.dromara.dbswitch:dbswitch-dist</exclude>
|
||||
</excludes>
|
||||
</dependencySet>
|
||||
</dependencySets>
|
||||
<dependencySets>
|
||||
<dependencySet>
|
||||
<useProjectArtifact>true</useProjectArtifact>
|
||||
<outputDirectory>lib</outputDirectory>
|
||||
<excludes>
|
||||
<exclude>org.dromara.dbswitch:dbswitch-dist</exclude>
|
||||
</excludes>
|
||||
</dependencySet>
|
||||
</dependencySets>
|
||||
|
||||
<fileSets>
|
||||
<!-- 打包assembly中的bin目录到 打包目录/bin 下 -->
|
||||
<files>
|
||||
<file>
|
||||
<source>src/main/assembly/bin/startup.sh</source>
|
||||
<outputDirectory>bin</outputDirectory>
|
||||
<lineEnding>unix</lineEnding>
|
||||
<fileMode>0755</fileMode>
|
||||
</file>
|
||||
<file>
|
||||
<source>src/main/assembly/bin/shutdown.sh</source>
|
||||
<outputDirectory>bin</outputDirectory>
|
||||
<lineEnding>unix</lineEnding>
|
||||
<fileMode>0755</fileMode>
|
||||
</file>
|
||||
<file>
|
||||
<source>src/main/assembly/bin/datasync.sh</source>
|
||||
<outputDirectory>bin</outputDirectory>
|
||||
<lineEnding>unix</lineEnding>
|
||||
<fileMode>0755</fileMode>
|
||||
</file>
|
||||
<file>
|
||||
<source>src/main/assembly/bin/startup.cmd</source>
|
||||
<outputDirectory>bin</outputDirectory>
|
||||
<lineEnding>dos</lineEnding>
|
||||
<fileMode>0755</fileMode>
|
||||
</file>
|
||||
<file>
|
||||
<source>src/main/assembly/bin/datasync.cmd</source>
|
||||
<outputDirectory>bin</outputDirectory>
|
||||
<lineEnding>dos</lineEnding>
|
||||
<fileMode>0755</fileMode>
|
||||
</file>
|
||||
</files>
|
||||
|
||||
<!-- 打包assembly中的bin目录到 打包目录/sbin 下 -->
|
||||
<fileSet>
|
||||
<directory>src/main/assembly/bin</directory>
|
||||
<outputDirectory>bin</outputDirectory>
|
||||
<fileMode>0755</fileMode>
|
||||
</fileSet>
|
||||
<fileSets>
|
||||
|
||||
<!-- 创建logs目录文件夹 -->
|
||||
<fileSet>
|
||||
<directory>${project.basedir}</directory>
|
||||
<outputDirectory>logs</outputDirectory>
|
||||
<excludes>
|
||||
<exclude>**/*</exclude>
|
||||
</excludes>
|
||||
</fileSet>
|
||||
<!-- 打包assembly中的upgrade目录到 打包目录/upgrade 下 -->
|
||||
<fileSet>
|
||||
<directory>src/main/assembly/upgrade</directory>
|
||||
<outputDirectory>upgrade</outputDirectory>
|
||||
<lineEnding>unix</lineEnding>
|
||||
<fileMode>0755</fileMode>
|
||||
</fileSet>
|
||||
|
||||
<!-- 创建ext目录文件夹 -->
|
||||
<fileSet>
|
||||
<directory>${project.basedir}</directory>
|
||||
<outputDirectory>ext</outputDirectory>
|
||||
<excludes>
|
||||
<exclude>**/*</exclude>
|
||||
</excludes>
|
||||
</fileSet>
|
||||
<!-- 创建logs目录文件夹 -->
|
||||
<fileSet>
|
||||
<directory>${project.basedir}</directory>
|
||||
<outputDirectory>logs</outputDirectory>
|
||||
<excludes>
|
||||
<exclude>**/*</exclude>
|
||||
</excludes>
|
||||
</fileSet>
|
||||
|
||||
<!-- 打包dbswitch-admin中的配置文件到打包目录/conf 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-admin/src/main/resources/
|
||||
</directory>
|
||||
<outputDirectory>conf</outputDirectory>
|
||||
<includes>
|
||||
<include>*.yml</include>
|
||||
<include>*.xml</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
<!-- 创建ext目录文件夹 -->
|
||||
<fileSet>
|
||||
<directory>${project.basedir}</directory>
|
||||
<outputDirectory>ext</outputDirectory>
|
||||
<excludes>
|
||||
<exclude>**/*</exclude>
|
||||
</excludes>
|
||||
</fileSet>
|
||||
|
||||
<!-- 打包dbswitch-data中的配置文件到打包目录/conf 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-data/src/main/resources
|
||||
</directory>
|
||||
<outputDirectory>conf</outputDirectory>
|
||||
<includes>
|
||||
<include>*.yml</include>
|
||||
<include>*.xml</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
<!-- 打包dbswitch-admin中的配置文件到打包目录/conf 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-admin/src/main/resources/
|
||||
</directory>
|
||||
<outputDirectory>conf</outputDirectory>
|
||||
<includes>
|
||||
<include>*.yml</include>
|
||||
<include>*.xml</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
<!-- 不写就是不打包 dbswitch-core和dbswitch-common 中的配置文件到打包目录/conf 下 -->
|
||||
<!-- 打包dbswitch-data中的配置文件到打包目录/conf 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-data/src/main/resources
|
||||
</directory>
|
||||
<outputDirectory>conf</outputDirectory>
|
||||
<includes>
|
||||
<include>*.yml</include>
|
||||
<include>*.xml</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
<!-- 将模块dbswitch-common的jar文件放到打包目录/lib 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-common/target
|
||||
</directory>
|
||||
<outputDirectory>lib</outputDirectory>
|
||||
<includes>
|
||||
<include>*.jar</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
<!-- 不写就是不打包 dbswitch-core和dbswitch-common 中的配置文件到打包目录/conf 下 -->
|
||||
|
||||
<!-- 将模块dbswitch-core的jar文件放到打包目录/lib 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-core/target</directory>
|
||||
<outputDirectory>lib</outputDirectory>
|
||||
<includes>
|
||||
<include>*.jar</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
<!-- 将模块dbswitch-common的jar文件放到打包目录/lib 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-common/target
|
||||
</directory>
|
||||
<outputDirectory>lib</outputDirectory>
|
||||
<includes>
|
||||
<include>*.jar</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
<!-- 将模块dbswitch-data的jar文件放到打包目录/lib 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-data/target</directory>
|
||||
<outputDirectory>lib</outputDirectory>
|
||||
<includes>
|
||||
<include>*.jar</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
<!-- 将模块dbswitch-core的jar文件放到打包目录/lib 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-core/target</directory>
|
||||
<outputDirectory>lib</outputDirectory>
|
||||
<includes>
|
||||
<include>*.jar</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
<!-- 将模块dbswitch-admin的jar文件放到打包目录/lib 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-admin/target
|
||||
</directory>
|
||||
<outputDirectory>lib</outputDirectory>
|
||||
<excludes>
|
||||
<exclude>dbswitch-admin-*.jar</exclude>
|
||||
</excludes>
|
||||
<includes>
|
||||
<include>*.jar</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
<!-- 将模块dbswitch-data的jar文件放到打包目录/lib 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-data/target</directory>
|
||||
<outputDirectory>lib</outputDirectory>
|
||||
<includes>
|
||||
<include>*.jar</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
<!-- 将模块dbswitch-admin的jar文件单独移动到目录/ext 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-admin/target
|
||||
</directory>
|
||||
<outputDirectory>ext</outputDirectory>
|
||||
<includes>
|
||||
<include>dbswitch-admin-*.jar</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
<!-- 将模块dbswitch-admin的jar文件放到打包目录/lib 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-admin/target
|
||||
</directory>
|
||||
<outputDirectory>lib</outputDirectory>
|
||||
<excludes>
|
||||
<exclude>dbswitch-admin-*.jar</exclude>
|
||||
</excludes>
|
||||
<includes>
|
||||
<include>*.jar</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
<!-- 将模块dbswitch-product下的jar文件放到打包目录/lib 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-product/dbswitch-register-product/target
|
||||
</directory>
|
||||
<outputDirectory>lib</outputDirectory>
|
||||
<includes>
|
||||
<include>*.jar</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
<!-- 将模块dbswitch-admin的jar文件单独移动到目录/ext 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-admin/target
|
||||
</directory>
|
||||
<outputDirectory>ext</outputDirectory>
|
||||
<includes>
|
||||
<include>dbswitch-admin-*.jar</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
<!-- 将模块drivers驱动等打包目录/drivers 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/drivers/
|
||||
</directory>
|
||||
<outputDirectory>drivers</outputDirectory>
|
||||
</fileSet>
|
||||
<!-- 将模块dbswitch-product下的jar文件放到打包目录/lib 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/dbswitch-product/dbswitch-register-product/target
|
||||
</directory>
|
||||
<outputDirectory>lib</outputDirectory>
|
||||
<includes>
|
||||
<include>*.jar</include>
|
||||
</includes>
|
||||
</fileSet>
|
||||
|
||||
</fileSets>
|
||||
<!-- 将模块drivers驱动等打包目录/drivers 下 -->
|
||||
<fileSet>
|
||||
<directory>${project.parent.basedir}/drivers/
|
||||
</directory>
|
||||
<outputDirectory>drivers</outputDirectory>
|
||||
</fileSet>
|
||||
|
||||
</fileSets>
|
||||
|
||||
</assembly>
|
@@ -0,0 +1,5 @@
|
||||
ALTER TABLE DBSWITCH_DATABASE_CONNECTION DROP COLUMN `mode`;
|
||||
DELETE from DBSWITCH_SCHEMA_HISTORY WHERE `version` not in ('1.0.0','1.0.1','1.0.2');
|
||||
UPDATE DBSWITCH_SCHEMA_HISTORY SET `checksum`='-1058003199' WHERE `version`='1.0.0';
|
||||
UPDATE DBSWITCH_SCHEMA_HISTORY SET `checksum`='2042052483' WHERE `version`='1.0.1';
|
||||
UPDATE DBSWITCH_SCHEMA_HISTORY SET `checksum`='2082606325' WHERE `version`='1.0.2';
|
@@ -0,0 +1,5 @@
|
||||
ALTER TABLE DBSWITCH_DATABASE_CONNECTION DROP COLUMN "mode";
|
||||
DELETE from DBSWITCH_SCHEMA_HISTORY WHERE "version" not in ('1.0.0','1.0.1','1.0.2');
|
||||
UPDATE DBSWITCH_SCHEMA_HISTORY SET "checksum"='-1058003199' WHERE "version"='1.0.0';
|
||||
UPDATE DBSWITCH_SCHEMA_HISTORY SET "checksum"='2042052483' WHERE "version"='1.0.1';
|
||||
UPDATE DBSWITCH_SCHEMA_HISTORY SET "checksum"='2082606325' WHERE "version"='1.0.2';
|
@@ -50,38 +50,6 @@
|
||||
</resource>
|
||||
</resources>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-resources-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>copy-license</id>
|
||||
<goals>
|
||||
<goal>copy-resources</goal>
|
||||
</goals>
|
||||
<phase>generate-resources</phase>
|
||||
<configuration>
|
||||
<resources>
|
||||
<resource>
|
||||
<directory>..</directory>
|
||||
<includes>
|
||||
<include>LICENSE.txt</include>
|
||||
<include>README.txt</include>
|
||||
</includes>
|
||||
</resource>
|
||||
</resources>
|
||||
<outputDirectory>${project.build.outputDirectory}/META-INF</outputDirectory>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-jar-plugin</artifactId>
|
||||
<configuration>
|
||||
<archive>
|
||||
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
|
||||
</archive>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.felix</groupId>
|
||||
<artifactId>maven-bundle-plugin</artifactId>
|
||||
@@ -120,31 +88,7 @@
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
<configuration>
|
||||
<sourceFileIncludes>
|
||||
<sourceFileInclude>**/core/Flyway.java</sourceFileInclude>
|
||||
<sourceFileInclude>**/core/api/**/*.java</sourceFileInclude>
|
||||
</sourceFileIncludes>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<reporting>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
<version>3.0.1</version>
|
||||
<configuration>
|
||||
<sourceFileIncludes>
|
||||
<sourceFileInclude>**/core/Flyway.java</sourceFileInclude>
|
||||
<sourceFileInclude>**/core/api/**/*.java</sourceFileInclude>
|
||||
</sourceFileIncludes>
|
||||
</configuration>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</reporting>
|
||||
|
||||
</project>
|
@@ -30,6 +30,7 @@ public class ClickhouseFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new DefaultProductFeatures();
|
||||
}
|
||||
|
@@ -29,6 +29,7 @@ public class DB2FactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new DefaultProductFeatures();
|
||||
}
|
||||
|
@@ -29,6 +29,7 @@ public class DmFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new DefaultProductFeatures();
|
||||
}
|
||||
|
@@ -348,6 +348,7 @@ public class DorisMetadataQueryProvider extends AbstractMetadataProvider {
|
||||
SourceProperties tblProperties) {
|
||||
if (CollectionUtils.isNotEmpty(primaryKeys)) {
|
||||
String primaryKeyAsString = getPrimaryKeyAsString(primaryKeys);
|
||||
// 自动分桶(BUCKETS AUTO)功能要求 Apache Doris 1.2.2 及以上版本
|
||||
builder.append(" DISTRIBUTED BY HASH(").append(primaryKeyAsString).append(") BUCKETS AUTO");
|
||||
if (StringUtils.isNotBlank(tblComment)) {
|
||||
builder.append(String.format(" COMMENT='%s' ", tblComment.replace("'", "\\'")));
|
||||
|
@@ -28,6 +28,7 @@ public class GbaseFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new MysqlFeatures();
|
||||
}
|
||||
|
@@ -31,6 +31,7 @@ public class GreenplumFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new DefaultProductFeatures();
|
||||
}
|
||||
|
@@ -31,6 +31,7 @@ public class HighgoFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new DefaultProductFeatures();
|
||||
}
|
||||
|
@@ -24,6 +24,7 @@ public class HiveFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new HiveFeatures();
|
||||
}
|
||||
|
@@ -30,6 +30,7 @@ public class KingbaseFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new DefaultProductFeatures();
|
||||
}
|
||||
|
@@ -29,6 +29,7 @@ public class MariadbFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new MysqlFeatures();
|
||||
}
|
||||
|
@@ -28,6 +28,7 @@ public class MongodbFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new DefaultProductFeatures();
|
||||
}
|
||||
|
@@ -27,6 +27,7 @@ public class MysqlFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new MysqlFeatures();
|
||||
}
|
||||
|
@@ -27,6 +27,7 @@ public class OracleFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new DefaultProductFeatures();
|
||||
}
|
||||
|
@@ -29,6 +29,7 @@ public class OscarFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new DefaultProductFeatures();
|
||||
}
|
||||
|
@@ -29,6 +29,7 @@ public class PostgresFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new DefaultProductFeatures();
|
||||
}
|
||||
|
@@ -27,6 +27,7 @@ public class SqliteFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new DefaultProductFeatures();
|
||||
}
|
||||
|
@@ -30,6 +30,7 @@ public class SqlserverFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new DefaultProductFeatures();
|
||||
}
|
||||
|
@@ -27,6 +27,7 @@ public class StarrocksFactoryProvider extends AbstractFactoryProvider {
|
||||
super(dataSource);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ProductFeatures getProductFeatures() {
|
||||
return new StarrocksFeatures();
|
||||
}
|
||||
|
BIN
drivers/kingbase/kingbase-v9r1/bcprov-jdk15on-1.70.jar
Normal file
BIN
drivers/kingbase/kingbase-v9r1/bcprov-jdk15on-1.70.jar
Normal file
Binary file not shown.
BIN
drivers/kingbase/kingbase-v9r1/kingbase8-9.0.0.jar
Normal file
BIN
drivers/kingbase/kingbase-v9r1/kingbase8-9.0.0.jar
Normal file
Binary file not shown.
14
pom.xml
14
pom.xml
@@ -68,7 +68,7 @@
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-dependencies</artifactId>
|
||||
<version>2.3.7.RELEASE</version>
|
||||
<version>2.5.6</version>
|
||||
<type>pom</type>
|
||||
<scope>import</scope>
|
||||
</dependency>
|
||||
@@ -133,18 +133,6 @@
|
||||
<version>1.4.2</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.reflections</groupId>
|
||||
<artifactId>reflections</artifactId>
|
||||
<version>0.9.11</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.dromara.dbswitch</groupId>
|
||||
<artifactId>dbswitch-product-repository</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>com.alibaba</groupId>
|
||||
<artifactId>easyexcel</artifactId>
|
||||
|
Reference in New Issue
Block a user