IoTDB 入门教程 企业篇①——IoTDB企业版(TimechoDB)快速上手

news2024/11/23 10:03:05

文章目录

  • 一、前文
  • 二、试用
  • 三、解压
  • 四、激活
  • 五、启动
  • 六、连接
  • 七、停止
  • 八、IoTDB-Workbench

一、前文

IoTDB入门教程——导读

二、试用

  • 通过天谋科技官网,联系天谋科技的商务。
  • 请求免费试用TimechoDB企业版,获得试用软件包
    在这里插入图片描述

三、解压

  • iotdb-enterprise-1.3.1.4-bin
    • activation: 机器文件目录
    • conf:配置文件目录
    • lib:依赖包目录
    • licenses:证书文件目录
    • sbin:启动和停止脚本目录
    • tools:系统工具目录

在这里插入图片描述

  • iotdb-workbench-1.2.2
    • config:配置文件目录
    • data:数据文件目录
    • sbin:启动和停止脚本目录
    • iotdb-workbench.jar:主jar包

在这里插入图片描述

四、激活

  • 将解压后的文件通过Xshell/Xftp直接上传到Linux服务器
  • 运行bash sbin/start-confignode.sh
[root@iZgw0bdpdtyqxyz77dha9nZ iotdb-enterprise-1.3.1.4-bin]# bash sbin/start-confignode.sh
----------------------------
Starting TimechoDB ConfigNode
----------------------------
Checking whether the ports are already occupied...
WARN:
WARN: the value of net.core.somaxconn (=128) is too small, please set it to a larger value using the following command.
WARN:     sudo sysctl -w net.core.somaxconn=65535
WARN: The original net.core.somaxconn value will be set back when the os reboots.
WARN:
setting local JMX...
ConfigNode on heap memory size = 384MB, off heap memory size = 128MB
If you want to change this configuration, please check conf/confignode-env.sh.
2024-08-01 11:56:26,650 [main] INFO  o.a.i.c.c.ConfigNodeDescriptor:107 - Start to read config file file:sbin/../conf/iotdb-common.properties 
2024-08-01 11:56:26,658 [main] INFO  o.a.i.c.c.ConfigNodeDescriptor:129 - start reading ConfigNode conf file: file:sbin/../conf/iotdb-confignode.properties 
2024-08-01 11:56:26,671 [main] INFO  o.a.i.c.s.ConfigNode:107 - IoTDB-ConfigNode environment variables: 

……………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………………

2024-08-01 11:56:28,655 [main] INFO  o.a.i.c.s.ConfigNode:197 - IoTDB-ConfigNode has successfully started and joined the cluster: defaultCluster. 

2024-08-01 11:59:28,212 [pool-5-IoTDB-Pipe-Runtime-Meta-Syncer-1] INFO  o.a.i.c.m.p.c.t.PipeTaskCoordinatorLock:64 - PipeTaskCoordinator lock (id: 1) waiting for thread pool-5-IoTDB-Pipe-Runtime-Meta-Syncer-1 
2024-08-01 11:59:28,213 [pool-5-IoTDB-Pipe-Runtime-Meta-Syncer-1] INFO  o.a.i.c.m.p.c.t.PipeTaskCoordinatorLock:69 - PipeTaskCoordinator lock (id: 1) acquired by thread pool-5-IoTDB-Pipe-Runtime-Meta-Syncer-1 
2024-08-01 11:59:28,214 [pool-5-IoTDB-Pipe-Runtime-Meta-Syncer-1] INFO  o.a.i.c.m.p.c.t.PipeTaskCoordinatorLock:97 - PipeTaskCoordinator lock (id: 1) released by thread pool-5-IoTDB-Pipe-Runtime-Meta-Syncer-1 
2024-08-01 11:59:28,233 [ProcExecWorker-1] INFO  o.a.i.c.p.i.p.AbstractOperatePipeProcedureV2:80 - ProcedureId 1 try to acquire pipe lock. 
2024-08-01 11:59:28,234 [ProcExecWorker-1] INFO  o.a.i.c.m.p.c.t.PipeTaskCoordinatorLock:64 - PipeTaskCoordinator lock (id: 2) waiting for thread ProcExecWorker-1 
2024-08-01 11:59:28,234 [ProcExecWorker-1] INFO  o.a.i.c.m.p.c.t.PipeTaskCoordinatorLock:69 - PipeTaskCoordinator lock (id: 2) acquired by thread ProcExecWorker-1 
2024-08-01 11:59:28,234 [ProcExecWorker-1] INFO  o.a.i.c.p.i.p.AbstractOperatePipeProcedureV2:90 - ProcedureId 1 acquired pipe lock. 
2024-08-01 11:59:28,234 [ProcExecWorker-1] INFO  o.a.i.c.p.i.n.AbstractNodeProcedure:39 - procedureId 1 acquire lock. 
2024-08-01 11:59:28,235 [ProcExecWorker-1] INFO  o.a.i.c.p.i.p.AbstractOperatePipeProcedureV2:101 - ProcedureId 1: LOCK_ACQUIRED. The following procedure should be executed with pipe lock. 
2024-08-01 11:59:28,240 [ProcExecWorker-1] INFO  o.a.i.c.p.i.p.r.PipeMetaSyncProcedure:51 - PipeMetaSyncProcedure: executeFromValidateTask 
2024-08-01 11:59:28,246 [ProcExecWorker-1] INFO  o.a.i.c.p.i.p.r.PipeMetaSyncProcedure:59 - PipeMetaSyncProcedure: executeFromCalculateInfoForTask 
2024-08-01 11:59:28,251 [ProcExecWorker-1] INFO  o.a.i.c.p.i.p.r.PipeMetaSyncProcedure:66 - PipeMetaSyncProcedure: executeFromWriteConfigNodeConsensus 
2024-08-01 11:59:28,256 [ProcExecWorker-1] INFO  o.a.i.c.p.i.p.r.PipeMetaSyncProcedure:73 - PipeMetaSyncProcedure: executeFromOperateOnDataNodes 
2024-08-01 11:59:28,279 [ProcExecWorker-1] INFO  o.a.i.c.p.i.n.AbstractNodeProcedure:54 - procedureId 1 release lock. 
2024-08-01 11:59:28,279 [ProcExecWorker-1] INFO  o.a.i.c.p.i.p.AbstractOperatePipeProcedureV2:149 - ProcedureId 1 release lock. Pipe lock will be released. 
2024-08-01 11:59:28,279 [ProcExecWorker-1] INFO  o.a.i.c.m.p.c.t.PipeTaskCoordinatorLock:97 - PipeTaskCoordinator lock (id: 2) released by thread ProcExecWorker-1 
2024-08-01 11:59:28,485 [pool-5-IoTDB-Pipe-Runtime-Meta-Syncer-1] INFO  o.a.i.c.m.p.c.r.PipeMetaSyncer:140 - After this successful sync, if PipeTaskInfo is empty during this sync and has not been modified afterwards, all subsequent syncs will be skipped 
2024-08-01 12:56:27,093 [pool-11-IoTDB-Activation-Service-2] WARN  o.a.i.c.m.a.ActivationManager:365 - License has not been set, and this ConfigNode currently not connects to any active ConfigNode. Cluster is readonly now. Contact Timecho for more information. 
  • /activation目录下面会出现system_info文件,该文件包含你这台服务器的及其信息,将该文件发送给天谋科技的工程师。
    在这里插入图片描述
  • 天谋科技的工程师通过system_info文件生成license证书。
  • 我们拿到license证书文件,将该上传到\activation目录下即可。
    在这里插入图片描述

五、启动

  • iotdb-enterprise-1.3.1.4-bin目录下面执行命令

bash sbin/start-standalone.sh

[root@iZgw0bdpdtyqxyz77dha9nZ iotdb-enterprise-1.3.1.4-bin]# bash sbin/start-standalone.sh 
Execute start-standalone.sh finished, you can see more details in the logs of confignode and datanode
  • 查询端口是否正常开启,默认6667端口和10710端口。

netstat -nplt

[root@iZgw0bdpdtyqxyz77dha9nZ iotdb-enterprise-1.3.1.4-bin]# netstat -nplt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp6       0      0 127.0.0.1:10760         :::*                    LISTEN      26788/java          
tcp6       0      0 127.0.0.1:10730         :::*                    LISTEN      26788/java         
tcp6       0      0 :::6667                 :::*                    LISTEN      26788/java        
tcp6       0      0 127.0.0.1:10740         :::*                    LISTEN      26788/java          
tcp6       0      0 127.0.0.1:10710         :::*                    LISTEN      26268/java   
tcp6       0      0 :::10750                :::*                    LISTEN      26788/java          
tcp6       0      0 :::10720                :::*                    LISTEN      26268/java    

在这里插入图片描述

六、连接

  • 连接数据库,默认账号:root,默认密码:root。

bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root

[root@iZgw0bdpdtyqxyz77dha9nZ iotdb-enterprise-1.3.1.4-bin]# bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root
---------------------
Starting IoTDB Cli
---------------------
 _____       _________  ______   ______    
|_   _|     |  _   _  ||_   _ `.|_   _ \   
  | |   .--.|_/ | | \_|  | | `. \ | |_) |  
  | | / .'`\ \  | |      | |  | | |  __'.  
 _| |_| \__. | _| |_    _| |_.' /_| |__) | 
|_____|'.__.' |_____|  |______.'|_______/  Enterprise version 1.3.1.4 (Build: 9658c9d)
                                           

Successfully login at 127.0.0.1:6667
IoTDB> exit

七、停止

bash sbin/stop-standalone.sh

[root@iZgw0bdpdtyqxyz77dha9nZ iotdb-enterprise-1.3.1.4-bin]# bash sbin/stop-standalone.sh
Check whether the internal_port is used..., port is 10710
Stop ConfigNode, PID: 26268
Check whether the rpc_port is used..., port is 6667
Stop DataNode, PID: 26788

八、IoTDB-Workbench

IoTDB-Workbench是IoTDB时序数据库的可视化控制台。

  • iotdb-workbench-1.2.2目录下面执行命令

bash sbin/start.sh

[root@iZgw0bdpdtyqxyz77dha9nZ iotdb-workbench-1.2.2]# bash sbin/start.sh 
----------------------------
Starting IoTDB Workbench
----------------------------
Checking whether the ports are already occupied


  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::               (v2.7.12)

2024-08-01 19:22:23,240 [background-preinit] INFO  o.h.v.i.util.Version:21 - HV000001: Hibernate Validator 6.2.5.Final 
2024-08-01 19:22:23,258 [main] INFO  o.s.b.StartupInfoLogger:55 - Starting Application using Java 1.8.0_401 on iZgw0bdpdtyqxyz77dha9nZ with PID 28137 (/home/iotdb-workbench-1.2.2/iotdb-workbench.jar started by root in /home/iotdb-workbench-1.2.2) 
2024-08-01 19:22:23,259 [main] INFO  o.s.b.SpringApplication:637 - The following 1 profile is active: "prod" 
2024-08-01 19:22:24,917 [main] WARN  o.mybatis.logging.Logger:44 - Skipping MapperFactoryBean with name 'alarmTraceMapper' and 'com.timecho.iotdbrealtime.mapper.AlarmTraceMapper' mapperInterface. Bean already defined with the same name! 
2024-08-01 19:22:24,918 [main] WARN  o.mybatis.logging.Logger:44 - Skipping MapperFactoryBean with name 'connectionMapper' and 'com.timecho.iotdbrealtime.mapper.ConnectionMapper' mapperInterface. Bean already defined with the same name! 
2024-08-01 19:22:24,918 [main] WARN  o.mybatis.logging.Logger:44 - Skipping MapperFactoryBean with name 'alarmConfigLogMapper' and 'com.timecho.iotdbrealtime.mapper.AlarmConfigLogMapper' mapperInterface. Bean already defined with the same name! 
2024-08-01 19:22:24,918 [main] WARN  o.mybatis.logging.Logger:44 - Skipping MapperFactoryBean with name 'alarmConfigMapper' and 'com.timecho.iotdbrealtime.mapper.AlarmConfigMapper' mapperInterface. Bean already defined with the same name! 
2024-08-01 19:22:24,919 [main] WARN  o.mybatis.logging.Logger:44 - Skipping MapperFactoryBean with name 'alarmRecordMapper' and 'com.timecho.iotdbrealtime.mapper.AlarmRecordMapper' mapperInterface. Bean already defined with the same name! 
2024-08-01 19:22:24,919 [main] WARN  o.mybatis.logging.Logger:44 - Skipping MapperFactoryBean with name 'queryMapper' and 'com.timecho.iotdbrealtime.mapper.QueryMapper' mapperInterface. Bean already defined with the same name! 
2024-08-01 19:22:24,919 [main] WARN  o.mybatis.logging.Logger:44 - No MyBatis mapper was found in '[com.timecho.iotdbrealtime.mapper]' package. Please check your configuration. 
2024-08-01 19:22:25,154 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker:376 - Bean 'com.thebeastshop.forest.springboot.ForestAutoConfiguration' of type [com.thebeastshop.forest.springboot.ForestAutoConfiguration$$EnhancerBySpringCGLIB$$7e309673] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) 
2024-08-01 19:22:25,458 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker:376 - Bean 'forestConfigurationProperties' of type [com.thebeastshop.forest.springboot.properties.ForestConfigurationProperties] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) 
2024-08-01 19:22:25,741 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker:376 - Bean '(inner bean)#77f80c04' of type [com.dtflys.forest.interceptor.SpringInterceptorFactory] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) 
2024-08-01 19:22:25,744 [main] INFO  o.s.c.s.PostProcessorRegistrationDelegate$BeanPostProcessorChecker:376 - Bean 'forestConfiguration' of type [com.dtflys.forest.config.ForestConfiguration] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying) 
2024-08-01 19:22:25,754 [main] INFO  c.d.f.s.ClassPathClientScanner:87 - [Forest] Created Forest Client Bean with name 'requestClient' and Proxy of 'com.timecho.iotdbrealtime.request.RequestClient' client interface 
2024-08-01 19:22:26,043 [main] INFO  o.s.b.w.e.t.TomcatWebServer:108 - Tomcat initialized with port(s): 9190 (http) 
2024-08-01 19:22:26,056 [main] INFO  o.a.j.l.DirectJDKLog:173 - Initializing ProtocolHandler ["http-nio-9190"] 
2024-08-01 19:22:26,057 [main] INFO  o.a.j.l.DirectJDKLog:173 - Starting service [Tomcat] 
2024-08-01 19:22:26,057 [main] INFO  o.a.j.l.DirectJDKLog:173 - Starting Servlet engine: [Apache Tomcat/9.0.75] 
2024-08-01 19:22:26,198 [main] INFO  o.a.j.l.DirectJDKLog:173 - Initializing Spring embedded WebApplicationContext 
2024-08-01 19:22:26,199 [main] INFO  o.s.b.w.s.c.ServletWebServerApplicationContext:292 - Root WebApplicationContext: initialization completed in 2823 ms 
2024-08-01 19:22:26,453 [main] INFO  c.a.d.s.b.a.DruidDataSourceAutoConfigure:55 - Init DruidDataSource 
2024-08-01 19:22:26,960 [main] INFO  c.a.d.p.DruidDataSource:1010 - {dataSource-1} inited 
 _ _   |_  _ _|_. ___ _ |    _ 
| | |\/|_)(_| | |_\  |_)||_|_\ 
     /               |         
                        3.5.3.1 
2024-08-01 19:22:28,353 [main] INFO  o.s.b.a.w.s.WelcomePageHandlerMapping:58 - Adding welcome page template: index 
2024-08-01 19:22:29,512 [main] INFO  o.a.j.l.DirectJDKLog:173 - Starting ProtocolHandler ["http-nio-9190"] 
2024-08-01 19:22:29,535 [main] INFO  o.s.b.w.e.t.TomcatWebServer:220 - Tomcat started on port(s): 9190 (http) with context path '' 
2024-08-01 19:22:29,544 [main] INFO  o.s.s.a.ScheduledAnnotationBeanPostProcessor:315 - No TaskScheduler/ScheduledExecutorService bean found for scheduled processing 
2024-08-01 19:22:29,553 [main] INFO  o.s.b.StartupInfoLogger:61 - Started Application in 7.117 seconds (JVM running for 8.046) 
  • 查询服务端口是9190

netstat -nplt

[root@iZgw0bdpdtyqxyz77dha9nZ iotdb-enterprise-1.3.1.4-bin]# netstat -nplt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 0.0.0.0:8098            0.0.0.0:*               LISTEN      24036/docker-proxy  
tcp        0      0 0.0.0.0:8099            0.0.0.0:*               LISTEN      24016/docker-proxy  
tcp        0      0 0.0.0.0:6379            0.0.0.0:*               LISTEN      32619/redis-server  
tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      618/rpcbind         
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      12579/nginx: worker 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1097/sshd           
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      1044/master         
tcp        0      0 0.0.0.0:443             0.0.0.0:*               LISTEN      12579/nginx: worker 
tcp6       0      0 :::8098                 :::*                    LISTEN      24043/docker-proxy  
tcp6       0      0 :::8099                 :::*                    LISTEN      24023/docker-proxy  
tcp6       0      0 :::33060                :::*                    LISTEN      17333/mysqld        
tcp6       0      0 :::9190                 :::*                    LISTEN      28137/java          
tcp6       0      0 :::8070                 :::*                    LISTEN      15219/java          
tcp6       0      0 127.0.0.1:10760         :::*                    LISTEN      28557/java          
tcp6       0      0 127.0.0.1:10730         :::*                    LISTEN      28557/java          
tcp6       0      0 :::3306                 :::*                    LISTEN      17333/mysqld        
tcp6       0      0 :::6667                 :::*                    LISTEN      28557/java          
tcp6       0      0 ::1:6379                :::*                    LISTEN      32619/redis-server  
tcp6       0      0 :::111                  :::*                    LISTEN      618/rpcbind         
tcp6       0      0 127.0.0.1:10740         :::*                    LISTEN      28557/java          
tcp6       0      0 127.0.0.1:10710         :::*                    LISTEN      28409/java          
tcp6       0      0 :::8089                 :::*                    LISTEN      30508/influxd-meta  
tcp6       0      0 ::1:25                  :::*                    LISTEN      1044/master         
tcp6       0      0 :::8091                 :::*                    LISTEN      30508/influxd-meta  
tcp6       0      0 :::10750                :::*                    LISTEN      28557/java          
tcp6       0      0 :::10720                :::*                    LISTEN      28409/java      
  • 记得在服务器安全组上要开放IoTDB-Workbanche服务的端口

在这里插入图片描述

觉得好,就一键三连呗(点赞+收藏+关注)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1970333.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

舞蹈症宝贝的专属锻炼秘籍来啦~✨

嘿宝贝们!👋 是不是有时候觉得身体里的“小舞蹈家”总想出来蹦跶两下,但又怕锻炼不当反而“跳”出问题?别怕,今天就给你种草一套超萌又超有效的舞蹈症患者锻炼大法!🎉 🌟【热身小妖精…

《Milvus Cloud向量数据库指南》——音频数据如何选择合适的 Embedding 模型?

音频数据:PANNs与音频搜索的深度探索 在数字化时代,音频数据作为信息传递的重要载体,其处理与分析技术日益受到关注。与图像搜索领域的“以图搜图”相类似,音频搜索技术也逐步成熟,允许用户基于输入的音频片段快速定位到相似或相关的音频内容。这一技术的实现,离不开强大…

苹果已明确允许 iPhone 和 iPad 上使用 PC 模拟器

苹果公司更新了其应用程序审核指南,允许 PC 模拟器提供 游戏下载,此举可能会改善应用程序商店中模拟器的状况。自苹果公司修订《应用程序审核指南》,允许模拟器进入 App Store 以来已经过去了三个月。虽然已经有很多模拟器被引入商店&#xf…

Python接口自动化测试数据提取分析:Jmespath

1、引言 在处理JSON数据时,我们常常需要提取、筛选或者变换数据。手动编写这些操作的代码不仅繁琐,而且容易出错。Python作为一个功能强大的编程语言,拥有丰富的库和工具来处理这些数据。今天,将介绍一个实用的Python库——JMESP…

SqlLite性能问题

sqlLite性能 最近使用sqlLite做了一些项目工具,对sqlLite的性能大概有了一个比较浅显的了解,在这里分析一下,希望能作为大家做技术选型的参考。 首先是写能力,sqlLite是一个单文件数据库,再加上锁问题,sqlL…

Postman:API开发与测试的强大伴侣

在当今的数字化时代,API(应用程序编程接口)已成为不同软件系统之间通信的桥梁,它们如同数字世界的“翻译官”,使得数据和服务能够在不同的平台和应用程序之间无缝流动。然而,API的开发、测试和维护并非易事…

大数据-62 Kafka 高级特性 主题 kafka-topics相关操作参数 KafkaAdminClient 偏移量管理

点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…

内网穿透的应用-Windows系统如何ssh连接群晖nas使用docker安装内网穿透软件

文章目录 前言1. 检查安装Container Manager2. 检查开启群晖SSH连接3. Windows SSH 连接群晖4. 下载Cpolar 镜像5. 群晖Docker安装Cpolar 前言 在某些群晖NAS型号版本,无法使用套件安装的时候,我们可以采用Docker的方式进行安装cpolar内网穿透工具&…

你看不上的“垃圾”——别人的赚钱“利器”

首先说一点,你认为是常识性的东西,也许还有4亿中国人不知道。 其次,你认为是遍地都有的、你看不上的、你瞧不起的这些“破烂玩意”,别人也许正拿来赚钱! 不可思议吧,事实就是如此。 我在老家,…

JAVA实战基于SSM的网上书店管理系统

目录 一、前言 二、技术介绍代码 三、项目实现流程 四、论文流程参考 五、核心代码截图 专注于大学生实战开发、讲解和毕业答疑等辅导,获取源码后台 一、前言 针对当前网络实际需求,我们深入剖析了过往系统的弊端,并依托计算机系统的先…

Hiredis_安装_重要API

目录 一 安装HiRedis 二 HiRedis的重要API 2.1 连接redis数据库 2.2 发送请求命令 2.3 释放资源 三 封装一个C版本的HiRedis 一 安装HiRedis 1.下载hiredis软件包 git clone https://github.com/redis/hiredis.git 2.进行解压与安装,步骤如下 cd hiredi…

2000-2022年 上市公司-投融资期限错配、短债长用、短贷长投(原始数据、计算代码、参考文献和最终计算结果)

上市公司在投融资过程中的管理决策对企业的财务稳定性和长期发展至关重要。投融资期限错配、短债长用和短贷长投是企业在资本运作中可能出现的问题,它们影响着企业的财务结构和风险管理。 投融资问题概述 投融资期限错配 指企业资产与债务的期限不匹配&#xff0…

ESG泡沫下的伊利:能否重拾消费者信任?

北京时间7月27日,第33届夏季奥林匹克运动会开幕式在法国巴黎举行,伊利作为中国体育代表团的主要赞助商,再次站在了聚光灯下。然而,在光鲜亮丽的营销背后,伊利正面临着前所未有的信任危机与业绩挑战。 近年来&#xff0…

关于IDEA git push 提交代码报committer 的邮件不是GitLab中的邮箱处理

1、报错截图 2、处理办法: 首先,‌需要检查GitLab的设置,‌确认登记的邮箱地址是否正确。‌ 如果发现邮箱不一致,‌需要更新Git的全局用户邮箱设置,‌以确保与GitLab中登记的邮箱保持一致。‌ 使用命令git config --g…

测试的基础概念

需求 需求的定义 用户需求:可以简单理解为甲方提出的需求,如果没有甲方,那么就是终端用户使用产品时必须要完成的任务。该需求一般比较简略。 软件需求:产品经理会把用户需求转化为软件需求(写成一个文档)…

软件技术(游戏软件开发方向)实训室解决方案

一、引言 随着数字娱乐产业的快速发展,游戏软件开发成为了一个热门领域。为满足市场对高质量游戏开发人才的需求,构建一套先进、全面、实战化的软件技术(游戏软件开发方向)实训室解决方案显得尤为重要。本方案旨在通过集成先进硬…

【守卫你的安全】基于高通QCS6490之AI智慧电子围篱展示方案

高通QCS6490是一款专为工业和商业物联网应用而设计的系统单芯片(SoC),支援高阶物联网装置的Wi-Fi 6E连线,以及先进的摄像头、人工智能和计算功能,以实现低功耗下的强大性能。这款芯片结合高通Kryo™ 670 CPU和高通Hexagon处理器,具…

Redis——哈希

哈希 是一个字符类型的字段和值的映射表,简单来说就是一个键值对的集合,特别适合存储对象; 哈希的命令有 H 有关; 1. 添加键值对 HSET 2. 获取键值对 HGET 3. 判断键值对是否存在 HEXISTS 4. 获取所有键 HKEYS

python-----------MRO知识点笔记

视频来源:【【python】B站最细致的super()详解,一定有你不知道的知识!】 https://www.bilibili.com/video/BV1FL4y1E7xK/?share_sourcecopy_web&vd_sourced59dcee6044af8fc880b46b581c3f58a MRO:方法解析顺序-------------M…