thingsboard mysql 数据库整改 · 物联网平台-威尼斯人最新

blog · 2020年05月13日 · 最后由 回复于 2022年09月21日 · 805 次阅读

应公司要求,将 thingsboard 数据库整改为 mysql,有大神弄过吗?

同求,按照 github 上操作了下,也是未能成功。楼主有解决么?

1、下载相应的驱动包,然后 cmd 到 maven 的 bin 目录 根据自己的实际情况 运行如下命令 mvn install:install-file -dfile=d:/360downloads/mysql-connector-java-5.1.38.jar -dgroupid=mysql -dartifactid=mysql-connector-java -dversion=5.1.38 -dpackaging=jar

-dgroupid 对应为 pom 文件中的 groupid

-dartifactid 对应为 pom 文件中的 artifactid

-dversion 对应为 pom 文件中的 version

-dpackaging 导入包的类型是 jar 包的话就是 jar

-dfile 你下载下来的 jar 包放的路径

2、thingsboard 根目录 pom.xml 加上以下依赖 mysql mysql-connector-java 5.1.38 / 3、导入 mysql 驱动包 idea 选择点击 file 菜单选择 project structure,点击 libraries,再点击左边的 “ ” 选择 java,然后选择本地 mysql 驱动包

4、thinsboard.yml 数据源配置修改为如下: database-platform: "${spring_jpa_database_platform:org.hibernate.dialect.mysql5innodbdialect}" driverclassname: "${spring_driver_class_name:com.mysql.jdbc.driver}" url: "${spring_datasource_url:jdbc:mysql://192.168.10.13:3306/thingsboard?useunicode=true&characterencoding=utf-8&allowmultiqueries=true&autoreconnect=true&servertimezone=utc}" username: "${spring_datasource_username:root}" password: "${spring_datasource_password:root123$}"

由于项目需要我公司需要开发一个物联网项目,之前也没有相应的案例,所以从网上找到开源的 thingsboard 项目(下文统称 tb)。公司之前的项目都是使用 mysql 数据库,而 tb 项目使用的关系数据库是 postgresql,因此为了更好的处理数据库中的数据领导让我实现使用 mysql 启动 thingsboard,下面开始我曲折的探索过程。 首先是在 mysql 数据库上建表和插入基础数据,建表语句和插入语句如下:

建表语句: create table admin_settings (   id varchar(31) not null,   json_value varchar(5000) default null,   key varchar(255) default null,   primary key (id) ) engine=innodb default charset=utf8; create table alarm (   id varchar(31) not null,   ack_ts bigint(20) default null,   clear_ts bigint(20) default null,   additional_info varchar(218) default null,   end_ts bigint(20) default null,   originator_id varchar(31) default null,   originator_type int(11) default null,   propagate tinyint(1) default null,   severity varchar(255) default null,   start_ts bigint(20) default null,   status varchar(255) default null,   tenant_id varchar(31) default null,   propagate_relation_types varchar(218) default null,   type varchar(255) default null,   primary key (id) ) engine=innodb default charset=utf8; create table asset (   id varchar(31) not null,   additional_info varchar(218) default null,   customer_id varchar(31) default null,   name varchar(255) default null,   label varchar(255) default null,   search_text varchar(255) default null,   tenant_id varchar(31) default null,   type varchar(255) default null,   primary key (id) ) engine=innodb default charset=utf8; create table attribute_kv (   entity_type varchar(255) not null,   entity_id varchar(31) default null,   attribute_type varchar(255) default null,   attribute_key varchar(255) default null,   bool_v tinyint(1) default null,   str_v varchar(255) default null,   long_v bigint(20) default null,   dbl_v double default null,   last_update_ts bigint(20) default null ) engine=innodb default charset=utf8; create table audit_log (   id varchar(31) not null,   tenant_id varchar(31) default null,   customer_id varchar(31) default null,   entity_id varchar(31) default null,   entity_type varchar(255) default null,   entity_name varchar(255) default null,   user_id varchar(31) default null,   user_name varchar(255) default null,   action_type varchar(255) default null,   action_data varchar(255) default null,   action_status varchar(255) default null,   action_failure_details varchar(255) default null,   primary key (id) ) engine=innodb default charset=utf8; create table component_descriptor (   id varchar(31) not null,   actions varchar(255) default null,   clazz varchar(255) default null,   configuration_descriptor varchar(1000) default null,   name varchar(255) default null,   scope varchar(255) default null,   search_text varchar(255) default null,   type varchar(255) default null,   primary key (id) ) engine=innodb default charset=utf8; create table customer (   id varchar(31) not null,   additional_info varchar(255) default null,   address varchar(255) default null,   address2 varchar(255) default null,   city varchar(255) default null,   country varchar(255) default null,   email varchar(255) default null,   phone varchar(255) default null,   search_text varchar(255) default null,   state varchar(255) default null,   tenant_id varchar(31) default null,   title varchar(255) default null,   zip varchar(255) default null,   primary key (id) ) engine=innodb default charset=utf8; create table dashboard (   id varchar(31) not null,   configuration varchar(255) default null,   assigned_customers varchar(255) default null,   search_text varchar(255) default null,   tenant_id varchar(31) default null,   title varchar(255) default null,   primary key (id) ) engine=innodb default charset=utf8; create table device (   id varchar(31) not null,   additional_info varchar(255) default null,   customer_id varchar(31) default null,   type varchar(255) default null,   name varchar(255) default null,   label varchar(255) default null,   search_text varchar(255) default null,   tenant_id varchar(31) default null,   primary key (id) ) engine=innodb default charset=utf8; create table device_credentials (   id varchar(31) not null,   credentials_id varchar(255) default null,   credentials_type varchar(255) default null,   credentials_value varchar(255) default null,   device_id varchar(31) default null,   primary key (id) ) engine=innodb default charset=utf8; create table entity_view (   id varchar(31) not null,   entity_id varchar(31) default null,   entity_type varchar(255) default null,   tenant_id varchar(31) default null,   customer_id varchar(31) default null,   type varchar(255) default null,   name varchar(255) default null,   keys varchar(255) default null,   start_ts bigint(20) default null,   end_ts bigint(20) default null,   search_text varchar(255) default null,   additional_info varchar(255) default null,   primary key (id) ) engine=innodb default charset=utf8; create table event (   id varchar(31) not null,   body varchar(255) default null,   entity_id varchar(31) default null,   entity_type varchar(255) default null,   event_type varchar(255) default null,   event_uid varchar(255) default null,   tenant_id varchar(31) default null,   primary key (id) ) engine=innodb default charset=utf8; create table relation (   from_id varchar(31) not null,   from_type varchar(255) default null,   to_id varchar(31) default null,   to_type varchar(255) default null,   relation_type_group varchar(255) default null,   relation_type varchar(255) default null,   additional_info varchar(255) default null,   primary key (from_id) ) engine=innodb default charset=utf8; create table rule_chain (   id varchar(255) not null,   additional_info varchar(255) default null,   configuration varchar(255) default null,   debug_mode bit(1) default null,   first_rule_node_id varchar(255) default null,   name varchar(255) default null,   root bit(1) default null,   search_text varchar(255) default null,   tenant_id varchar(255) default null,   primary key (id) ) engine=innodb default charset=utf8; create table rule_node (   id varchar(31) not null,   rule_chain_id varchar(31) default null,   additional_info varchar(255) default null,   configuration varchar(255) default null,   type varchar(255) default null,   name varchar(255) default null,   debug_mode tinyint(1) default null,   search_text varchar(255) default null,   primary key (id) ) engine=innodb default charset=utf8; create table tb_user (   id varchar(31) not null,   additional_info varchar(255) default null,   authority varchar(255) default null,   customer_id varchar(31) default null,   email varchar(255) default null,   first_name varchar(255) default null,   last_name varchar(255) default null,   search_text varchar(255) default null,   tenant_id varchar(31) default null,   primary key (id) ) engine=innodb default charset=utf8; create table tenant (   id varchar(31) not null,   additional_info varchar(255) default null,   address varchar(255) default null,   address2 varchar(255) default null,   city varchar(255) default null,   country varchar(255) default null,   email varchar(255) default null,   phone varchar(255) default null,   region varchar(255) default null,   search_text varchar(255) default null,   state varchar(255) default null,   title varchar(255) default null,   zip varchar(255) default null,   primary key (id) ) engine=innodb default charset=utf8; create table tenant_ts_kv (   tenant_id varchar(31) not null,   entity_id varchar(31) not null,   key varchar(255) not null,   ts bigint(20) not null,   bool_v tinyint(1) default null,   str_v varchar(255) default null,   long_v bigint(20) default null,   dbl_v double default null,   primary key (tenant_id,entity_id,key,ts) ) engine=innodb default charset=utf8; create table ts_kv (   entity_type varchar(255) not null,   entity_id varchar(31) not null,   key varchar(255) not null,   ts bigint(20) not null,   bool_v tinyint(1) default null,   str_v varchar(255) default null,   long_v bigint(20) default null,   dbl_v double default null,   primary key (entity_type,entity_id,key,ts) ) engine=innodb default charset=utf8; create table ts_kv_latest (   entity_type varchar(255) not null,   entity_id varchar(31) not null,   key varchar(255) not null,   ts bigint(20) not null,   bool_v tinyint(1) default null,   str_v varchar(255) default null,   long_v bigint(20) default null,   dbl_v double default null,   primary key (entity_type,entity_id,key) ) engine=innodb default charset=utf8; create table user_credentials (   id varchar(31) not null,   activate_token varchar(255) default null,   enabled tinyint(1) default null,   password varchar(255) default null,   reset_token varchar(255) default null,   user_id varchar(31) default null,   primary key (id),   unique key activate_token (activate_token),   unique key reset_token (reset_token),   unique key user_id (user_id) ) engine=innodb default charset=utf8;

create table widget_type (   id varchar(31) not null,   alias varchar(255) default null,   bundle_alias varchar(255) default null,   descriptor varchar(10000) default null,   name varchar(255) default null,   tenant_id varchar(31) default null,   primary key (id) ) engine=innodb default charset=utf8;

create table widgets_bundle (   id varchar(31) not null,   alias varchar(255) default null,   search_text varchar(255) default null,   tenant_id varchar(31) default null,   title varchar(255) default null,   primary key (id) ) engine=innodb default charset=utf8;

插入基础数据:

insert into admin_settings (id, json_value, key) values ('1e746126a2266e4a91992ebcb67fe33', '{\r\n    \"baseurl\": \"\"\', 'general');

insert into user_credentials (id, activate_token, enabled, password, reset_token, user_id) values ('1e7461261441950a91992ebcb67fe33', null, '1', '$2a$10$5jtb8/hxwc9way62ncgsxeefl3kwmipa9nfpvdda0/xfiseebb4bu', null, '1e746125a797660a91992ebcb67fe33');

insert into tb_user (id, additional_info, authority, customer_id, email, first_name, last_name, search_text, tenant_id) values ('1e746125a797660a91992ebcb67fe33', '{\"lastlogints\":1581066533969,\"failedloginattempts\":0}', 'sys_admin', '1b21dd2138140008080808080808080', 'sysadmin@thingsboard.org', null, null, 'sysadmin@thingsboard.org', '1b21dd2138140008080808080808080');

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册
网站地图