【时序数据库InfluxDB】Windows环境下配置InfluxDB+数据可视化,以及使用 C#进行简单操作的代码实例

简介: influxDB的官网下载地址 https://portal.influxdata.com/downloads/打开以后,如下图所示,可以选择版本号,以及平台。此处咱们选择windows平台。不过此处没有实际的可以下载的地方,着实比较过分,不过咱们可以另辟蹊径。


前言:如题。直接上手撸,附带各种截图,就不做介绍了。

 

1、influxDB的官网下载地址  https://portal.influxdata.com/downloads/

打开以后,如下图所示,可以选择版本号,以及平台。此处咱们选择windows平台。不过此处没有实际的可以下载的地方,着实比较过分,不过咱们可以另辟蹊径。


1995789-20220630093304626-1672545821.png


2、直接下载。具体地址如下,2.3.0是版本号:

https://dl.influxdata.com/influxdb/releases/influxdb2-2.3.0-windows-amd64.zip


链接说明:该链接是下载windows版本的influxDB的链接,其中 influxdb2-2.3.0-windows-amd64.zip 里面,2.3.0是版本号,可以通过修改这个版本号来下载你所需要的具体版本文件。


1995789-20220630102507972-1016885297.png


3、或者通过这个地址进行下载:

https://docs.influxdata.com/influxdb/v2.1/install/?t=Windows

其中,/v2.1是版本号,把2.1改成2.3就可以下载2.3的版本了。此处仅做个实验,例如下载2.1版本。


1995789-20220630102911025-5233506.png


4、可以对比下真实的下载链接地址,与上面的2.3.0版本地址只差了一个版本号信息,其他都一样。


1995789-20220630103113361-547033261.png


5、此处使用2.3.0版本,解压以后进行使用。


1995789-20220630103205426-663319704.png

 

6、CMD到解压的根目录下,直接执行influxdb.exe文件(cmd命令执行,不会闪退,直接点有可能会一闪而过)

备注:也可以通过nssm工具进行部署成Windows服务,部署方法可以参考我的其他博客内容,有相关信息,此处不再重复写。


1995789-20220630104513005-1451222642.png

 

7、启动以后,在cmd窗口也可以看到默认端口号8086,所以在地址栏输入 htp://127.0.0.1:8086/onboarding/  就可以打开起始监控面板,然后进行一些初始化操作了。


1995789-20220630104708225-1132009029.png

 

8、打开初始页面,可以用来创建初始用户信息


1995789-20220630104846926-1914689363.png

 

9、例如,我此处创建一个用户 wesky,以及有关的组和实例,如图备注的信息。然后执行下一步(CONTINUE)


1995789-20220630105533604-32954253.png

 

10、选择快速开始

 1995789-20220630105638107-1097624723.png


11、创建完成以后,进入到主页。


1995789-20220630105705813-539089093.png

 

12、可以看到它支持的客户端,包括C#,以及其他很多别的支持。说明还是比较强大了,支持的方案有很多,以及也可以支持从消息队列、系统日志、其他数据库等地方进行导入或写入数据,有待大佬们自己摸索了。


1995789-20220630105845384-541827006.png


13、找到API TOKENS选项,这里会生成用户的一个唯一token信息,用来写代码时候会用到。

 1995789-20220630110013497-1147552134.png


14、点击用户's Token,可以打开具体的token信息


1995789-20220630110227024-701539414.png

 

15、找到token信息,可以先拷贝下来备用。或者等下需要的时候,知道在这里寻找也可以。

 1995789-20220630110307611-1258396913.png


16、接下来开始写个代码进行演示一下基础操作,当作入个门。创建一个控制台项目,叫InfluxDbTest

 1995789-20220630110348284-1300906153.png


17、此处选择.net 6版本环境,当然,大佬们也可以选择其他环境,问题不大的。


1995789-20220630110516063-299014502.png

 

18、创建完成以后,引入nuget包 InfluxDB.Client


1995789-20220630110610843-39909442.png

 

19、写点代码测试一下(源码会附录在文末),此处先创建客户端,然后定义组织、以及实例(Bucket),然后通过写入一个数据进行进行测试(此处手抖了一下,我运行了两次,所以实际写入了两个数据)

备注:写入数据或者读写或者其他操作,也可以参考上面influxdb面板里面提供C#功能的案例里面,点击进去可以看到一些例子。


1995789-20220630110654005-163554890.png

 

20、如图,可视化面板里面,可以进行数据查询,以及数据可视化。Bucket就是咱们创建的数据库实例,mem就是对应上面的代码里面写的mem,可以当作是一个表,然后是一些标签、字段等。Field是字段,可以自己拓展其他字段等等。


1995789-20220630111010462-2093340723.png 

21、写个循环,累加测试一下,改造一下代码,然后继续运行。


1995789-20220630111229016-1629301280.png


22、可以看到数据一直往上飘,因为值是累加的,所以效果和预期一致。


1995789-20220630111301162-925416993.png

 

23、来点刺激一点的测试,搞个随机数,可能效果会好玩一点。此处弄个写入0-100的随机数,然后间隔10msx写入一次。

 1995789-20220630111356879-1003423527.png


24、让显示的按照10ms为单位进行显示,效果如图,数值都是随机的,所以走势就很花里胡哨了。


1995789-20220630111556700-1405535951.png

 

25、展示效果选择表格样式,如图,也是可以的。

 1995789-20220630111658622-927556194.png


有关最终的代码:


using InfluxDB.Client;
using InfluxDB.Client.Api.Domain;
using InfluxDB.Client.Writes;
Console.WriteLine("Hello, World!");
const string token = "mOGqO3m23KHOAnsByiEAS6rJGEZEl0iuhZNGn0QNbg_vs4P_Rqa9_eWmnuYb_ovS7dy2G19xA-SqR6RMlQ3iXw==";  // influxdb生成的token
const string org = "Organization";
const string bucket = "Bucket";
using (var client = InfluxDBClientFactory.Create("http://localhost:8086", token))  // 生产环境下使用,可以使用单例来注册使用同一个客户端,减少创建次数
{
    using (var writeApi = client.GetWriteApi())
    {
        for (int i = 0; i <= 1000; i++)
        {
            var point = PointData.Measurement("mem")
                .Tag("host", "local")
                .Field("Field1", new Random().Next(0,100))
                .Timestamp(DateTime.UtcNow, WritePrecision.Ns);
            writeApi.WritePoint(point, bucket, org);
            Thread.Sleep(10);
        }
    }
}
Console.WriteLine("Hello, World 2 !");
Console.ReadLine();

 

以上就是该文章的全部内容,时序数据库可以用于工业物联网环境下,特别是对设备数值进行监控,可以很直观看出每个时间区间的状态图、或者步行图等等。欢迎大佬们自行去拓展更加风骚的玩法,此处仅用于入门教程。


目录
相关文章
|
18天前
|
存储 监控 安全
数据库多实例的部署与配置方法
【10月更文挑战第23天】数据库多实例的部署和配置需要综合考虑多个因素,包括硬件资源、软件设置、性能优化、安全保障等。通过合理的部署和配置,可以充分发挥多实例的优势,提高数据库系统的运行效率和可靠性。在实际操作中,要不断总结经验,根据实际情况进行调整和优化,以适应不断变化的业务需求。
|
15天前
|
存储 负载均衡 Java
如何配置Windows主机MPIO多路径访问存储系统
Windows主机多路径(MPIO)是一种技术,用于在客户端计算机上配置多个路径到存储设备,以提高数据访问的可靠性和性能。本文以Windows2012 R2版本为例介绍如何在客户端主机和存储系统配置多路径访问。
57 13
如何配置Windows主机MPIO多路径访问存储系统
|
3天前
|
监控 安全 网络安全
Windows Server管理:配置与管理技巧
Windows Server管理:配置与管理技巧
19 3
|
10天前
|
消息中间件 资源调度 关系型数据库
如何在Flink on YARN环境中配置Debezium CDC 3.0,以实现实时捕获数据库变更事件并将其传输到Flink进行处理
本文介绍了如何在Flink on YARN环境中配置Debezium CDC 3.0,以实现实时捕获数据库变更事件并将其传输到Flink进行处理。主要内容包括安装Debezium、配置Kafka Connect、创建Flink任务以及启动任务的具体步骤,为构建实时数据管道提供了详细指导。
33 9
|
7天前
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
23 3
|
7天前
|
监控 关系型数据库 MySQL
Linux环境下MySQL数据库自动定时备份策略
在Linux环境下,MySQL数据库的自动定时备份是确保数据安全和可靠性的重要措施。通过设置定时任务,我们可以每天自动执行数据库备份,从而减少人为错误和提高数据恢复的效率。本文将详细介绍如何在Linux下实现MySQL数据库的自动定时备份。
20 3
|
10天前
|
安全 Nacos 数据库
Nacos是一款流行的微服务注册与配置中心,但直接暴露在公网中可能导致非法访问和数据库篡改
Nacos是一款流行的微服务注册与配置中心,但直接暴露在公网中可能导致非法访问和数据库篡改。本文详细探讨了这一问题的原因及解决方案,包括限制公网访问、使用HTTPS、强化数据库安全、启用访问控制、监控和审计等步骤,帮助开发者确保服务的安全运行。
24 3
|
14天前
|
PHP 数据库 数据安全/隐私保护
布谷直播源码部署服务器关于数据库配置的详细说明
布谷直播系统源码搭建部署时数据库配置明细!
|
16天前
|
Java 数据库连接 数据库
如何构建高效稳定的Java数据库连接池,涵盖连接池配置、并发控制和异常处理等方面
本文介绍了如何构建高效稳定的Java数据库连接池,涵盖连接池配置、并发控制和异常处理等方面。通过合理配置初始连接数、最大连接数和空闲连接超时时间,确保系统性能和稳定性。文章还探讨了同步阻塞、异步回调和信号量等并发控制策略,并提供了异常处理的最佳实践。最后,给出了一个简单的连接池示例代码,并推荐使用成熟的连接池框架(如HikariCP、C3P0)以简化开发。
35 2
|
17天前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
59 2