麒麟 Linux aarch64安装.NET 6,并适配.net应用(达梦数据库)
麒麟 Linux aarch64安装.NET 6并适配.net应用(达梦数据库)适用环境麒麟 Linux aarch64达梦(DM)数据库.NET 6。部署目录约定.NET 运行时/home/hmf/dotnet应用本体/home/hmf一、安装.NET6运行环境wget https://dot.net/v1/dotnet-install.sh -O dotnet-install.shchmod x dotnet-install.sh# 不加 --runtime 参数 装完整 SDK含编译工具链 对应运行时./dotnet-install.sh --channel 6.0 --install-dir /home/hmf/dotnet# 配置环境变量安装在用户目录下写入 ~/.bashrc 即可不需要 rootecho export DOTNET_ROOT/home/hmf/dotnet ~/.bashrcecho export PATH$PATH:/home/hmf/dotnet ~/.bashrcsource ~/.bashrc##验证版本dotnet --infodotnet --list-sdks # 应该能看到 6.0.xdotnet --list-runtimes # 应该能看到 Microsoft.AspNetCore.App 6.0.x 和 Microsoft.NETCore.App 6.0.x离线环境连不了外网改成下载dotnet-sdk-6.0.x-linux-arm64.tar.gzdotnet.microsoft.com传到 tidb 后解压到/home/hmf/dotnet其余步骤一样。#检查版本Version: 6.0.36二、适配应用2.1、准备达梦驱动达梦官网www.dameng.com下载中心用达梦通行证账号登录后下载.NET驱动包文件名类似dotNet-日期.zip解压后会看到几个文件夹比如dmDriver/DmProvider/ - 这个就是我们要用的DM.DmProvider.8.3.1.51364.nupkg - 真正的 NuGet 包文件net40/ net45/ net5.0/ net6.0/ ... - 包展开后按目标框架分的 lib 目录不用管EFCore.Dm6.0/ - Entity Framework Core 驱动本项目用不到不用管把DmProvider这个文件夹整个传到目标机比如放在/home/hmf/dmDriver/DmProvider。注册为本地 NuGet 源dotnet nuget add source /home/hmf/dmDriver/DmProvider --name dm-local如果提示dm-local这个名字已经存在比如之前加过、指向了别的路径改用dotnet nuget update source dm-local --source /home/hmf/dmDriver/DmProvider确认一下dotnet nuget list source# dm-local 那一行应该显示 /home/hmf/dmDriver/DmProvider2.2、加到项目里cd /home/hmf/TestAppdotnet add package DM.DmProvider --version 8.3.1.51364 -s /home/hmf/dmDriver/DmProvider会自动把PackageReference IncludeDM.DmProvider Version8.3.1.51364 /写进TestApp.csproj不用手动改文件。换了机器部署时这一步下载驱动 注册本地源 add package都要重新做一遍因为dotnet nuget add source是注册在当前机器的全局 NuGet 配置里的不会跟着项目代码一起传过去。2.3、还原依赖并编译cd /home/hmf/TestAppdotnet build -c Release2.4、 修改数据库连接配置编辑/home/hmf/TestApp/appsettings.json{ConnectionStrings: {DmConn: Server达梦库地址;Port端口默认5236;User Id用户名;PWD密码;},Kestrel: {Endpoints: {Http: {Url: http://0.0.0.0:8089}}}}监听地址建议用0.0.0.0监听所有网卡而不是写死具体 IP机器换 IP 或有多网卡时更省心。2.5、 运行前先验证数据库网络连通性telnet 达梦库地址 5236# 或nc -zv 达梦库地址 5236有disql等达梦客户端工具的话也可以直接拿账号密码连一下确认OK 之后再启动本应用避免网络问题和应用层报错混在一起排查。2.7、发布并直接运行验证cd /home/hmf/TestAppdotnet publish -c Release -o /home/hmf/TestApp/outcd /home/hmf/TestApp/outdotnet TestDmPlugin.dll看到类似输出说明启动成功Now listening on: http://0.0.0.0:8089Application started. Press CtrlC to shut down.浏览器访问http://10.1.1.229:8089/应看到 select/other 两个 SQL 输入框的界面测试 SQL 确认能正常连上达梦库并返回结果。CtrlC停止后继续第 8 步配置为系统服务长期运行。查看日志页面每次点击execSelect/execOther执行 SQL都会记录一条日志请求的 SQL、成功返回行数/影响行数、或失败时的异常堆栈写入运行目录下的logs文件夹按天滚动/home/hmf/TestApp/out/logs/app-20260720.log日志目录可通过appsettings.json里的Logging:LogDirectory配置默认值logs相对可执行文件所在目录也可以填绝对路径。前台运行第7步和 systemd 服务第8步用的是同一份代码都会写这个日志文件跟终端输出/journalctl是两份独立的记录互不影响。排查问题时优先看这个文件比journalctl更完整包含每次 SQL 请求明细。tail -f /home/hmf/TestApp/out/logs/app-$(date %Y%m%d).log三、配置systemd服务和开放端口3.1、置systemd服务创建/etc/systemd/system/testapp.service[Unit]DescriptionTestApp DM Plugin TestAfternetwork.target[Service]WorkingDirectory/home/hmf/TestApp/outExecStart/home/hmf/dotnet/dotnet /home/hmf/TestApp/out/TestDmPlugin.dllRestartalwaysRestartSec5KillSignalSIGINTSyslogIdentifiertestappUserhmfEnvironmentASPNETCORE_ENVIRONMENTProduction[Install]WantedBymulti-user.target启用并启动systemctl daemon-reloadsystemctl enable testappsystemctl start testappsystemctl status testapp查看日志journalctl -u testapp -f除了 journald应用自身还会把日志写入文件详见下方「日志文件」一节路径固定在/home/hmf/TestApp/out/logs/不受 systemd/前台运行方式影响且不会随终端关闭或服务重启丢失。后续改了代码重新发布只需要cd /home/hmf/TestAppdotnet publish -c Release -o /home/hmf/TestApp/outsystemctl restart testapp3.2、开放防火墙端口# firewalldfirewall-cmd --permanent --add-port8089/tcpfirewall-cmd --reload# 或 iptablesiptables -I INPUT -p tcp --dport 8089 -j ACCEPT四、常见问题现象可能原因处理dotnet build/dotnet add package报找不到 SDK只装了 Runtime没装 SDK回到第 1 步用不带--runtime的命令装完整 SDKdotnet add package DM.DmProvider报NU1101/找不到包本地 NuGet 源没注册对或路径指错了dotnet nuget list source确认dm-local指向的路径就是DmProvider那个文件夹里面直接能看到.nupkg文件的那一层编译报warning MSB3245: Could not locate the assembly DmProvidercsproj里残留旧的Reference HintPath...写法打开TestApp.csproj删掉Reference IncludeDmProvider那一整段只留PackageReference IncludeDM.DmProvider ...连接达梦库报错/超时连接串错误、网络不通、达梦库未开放对应端口先做第 6 步的网络连通性验证检查appsettings.json连接串页面打不开端口未监听/防火墙未放行/进程未启动ss -lntp \| grep 8089确认监听检查systemctl status testapp和防火墙规则中文乱码精简版系统缺少区域/编码支持确认系统已装localezh_CN.UTF-8权限不足无法监听端口非 root 用户尝试监听 1024 以下端口用 1024 以上端口已经是 8089没问题或给可执行文件加setcap cap_net_bind_serviceep五、其他达梦驱动下载达梦官方下载平台离线内网用下载完整 ARM 驱动包主下载页官方入口https://eco.dameng.com/download/两种下载方式获取.NET 驱动下载 DM8 ARM64 开发版安装包推荐CPU 平台鲲鹏 920aarch64/ARM 通用系统银河麒麟 / 统信 UOS下载后解压 / 安装路径dmdbms/drivers/dotNet/内含Dameng.Data.Provider.8.x.x.nupkg离线安装包2、页面底部【工具与驱动】单独下载.NET 驱动下滑页面找到「.NET 开发包」直接下载对应 DM8 版本驱动压缩包。本次我下载的是这个。下载的文件包为dotNet-20260710.zip

相关新闻

计算机毕业设计之基于Vue框架的云停车App的设计与实现

计算机毕业设计之基于Vue框架的云停车App的设计与实现

本文介绍了一款使用laravel基于Vue框架的云停车App,及其设计与实现过程。根据软件工程对软件系统开发定制的规则和标准,详细的介绍了系统的分析与设计过程,并且详细的概括了系统的开发与测试过程。本文的管理系统使用了HBuilderX编辑器以及 u…

2026/10/4 2:00:33 阅读更多 →
计算机毕业设计之基于PHP的个人网站的设计与实现

计算机毕业设计之基于PHP的个人网站的设计与实现

如今,在科学技术飞速发展的情况下,信息化的时代也已因为计算机的出现而来临,信息化也已经影响到了社会上的各个方面。它可以为人们提供许多便利之处,可以大大提高人们的工作效率。随着计算机技术的发展的普及,各个领域…

2026/10/11 8:04:10 阅读更多 →
PowerBI数据准备—获取Sharepoint/Onedrive上的Excel

PowerBI数据准备—获取Sharepoint/Onedrive上的Excel

商业版的SharePoint和OneDrive是支持发布后&#xff0c;云端自动刷新 1、获取访问链接 ①-网页OneDrive 复制路径&#xff08;推荐&#xff09; 浏览器打开 OneDrive 商业版&#xff08;https://<公司>-my.sharepoint.com&#xff09; 找到目标 Excel &#xff0c;点…

2026/10/14 17:11:26 阅读更多 →

最新新闻

智诺方AI|期刊论文导师意见修改,分段改写搞定查重和AIGC

智诺方AI|期刊论文导师意见修改,分段改写搞定查重和AIGC

写好「导师意见修改」&#xff0c;再谈降重与降 AIGC 先把研究内容写清楚&#xff0c;再处理重复率与 AI 痕迹&#xff0c;顺序不能反。导师意见修改最怕「改了表述、丢了要求」。意见若被 AI 一键稀释&#xff0c;返回稿看起来更顺&#xff0c;却没回答导师真正卡住的点。 在期…

2026/10/15 3:11:37 阅读更多 →
Large Language Model Powered Automated Modeling and Optimization of Active Distribution Network D...

Large Language Model Powered Automated Modeling and Optimization of Active Distribution Network D...

文章主要内容总结 本文针对主动配电网(ADNs)调度问题,提出了一种基于大型语言模型(LLM)的自动化建模与优化方法。随着分布式能源(DERs)的大量接入,ADNs调度的复杂性显著提升,但新加入的运营商(如配电网聚合商、虚拟电厂管理者等)往往缺乏电力系统运行、建模、优化及…

2026/10/15 3:11:37 阅读更多 →
GPT-4o 等四个模型明年1月下架API,迁移前先做这几件事

GPT-4o 等四个模型明年1月下架API,迁移前先做这几件事

10 月 14 日&#xff0c;OpenAI 给开发者发了通知&#xff1a;GPT-4o、GPT-4o mini、GPT-4.1、GPT-4.1 mini 这四个模型&#xff0c;将在 2027 年 1 月 14 日从 API 下架&#xff0c;基于它们做的微调版本同一天停用。算下来&#xff0c;离下线还有大概三个月。 这里有个容易忽…

2026/10/15 3:11:37 阅读更多 →
Can Small-Scale Data Poisoning Exacerbate Dialect-Linked Biases in Large Language Models?

Can Small-Scale Data Poisoning Exacerbate Dialect-Linked Biases in Large Language Models?

文章主要内容总结 本文研究了小规模数据投毒是否会加剧大型语言模型(LLMs)中与方言相关的偏见,重点对比了非洲裔美国白话英语(AAVE)和标准美国英语(SAE)的差异。研究使用小尺度和中尺度的LLaMA模型,发现即使暴露于极少量的投毒数据,模型对AAVE输入的毒性输出也会显著…

2026/10/15 3:11:37 阅读更多 →
Improving the Performance of Sequential Recommendation Systems with an Extended Large Language Model

Improving the Performance of Sequential Recommendation Systems with an Extended Large Language Model

文章主要内容总结 本文聚焦于大型语言模型(LLMs)在序列推荐系统中的应用,提出通过在LlamaRec框架中用Llama3替换Llama2来提升推荐性能。研究保持LlamaRec的原有结构(包括检索器和排序器的两阶段推荐流程),仅更换排序器中的LLM,并通过统一随机种子、相同输入数据等确保实…

2026/10/15 3:11:37 阅读更多 →
Apereo CAS 服务注册表自动初始化(Service Registry Initialization)实战指南

Apereo CAS 服务注册表自动初始化(Service Registry Initialization)实战指南

后端认证鉴权单点登录 【免费下载链接】cas Apereo CAS - Identity & Single Sign On for all earthlings and beyond. 项目地址&#xff1a; https://gitcode.com/gh_mirrors/ca/cas 点击查看 免费下载 导读 Apereo CAS 在启动时会根据配置自动将 classpath 上的默认 JS…

2026/10/15 3:10:36 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时&#xff0c;网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上&#xff0c;依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里&#xff0c;扩缩容到底难在哪做过大模型推理服务部署的人&#xff0c;大概都经历过这样的场景&#xff1a;一个团队共用一套推理集群&#xff0c;A 业务跑的是 7B 的小模型&#xff0c;B 业务跑的是 72B 的大模型&#xff0c;C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子&#xff1a;一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减&#xff0c;为了把启动时间压进两秒以内&#xff0c;我手贱地把一串自认为“没用”的 systemd 服务给 disable 了&#xff0c;其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介&#xff1a;基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码&#xff0c;面向计算机相关专业课程设计与期末大作业学生&#xff0c;以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程&#xff0c;…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程&#xff1a;键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化&#xff0c;十个新手有八个栽在"往输入框里填东西"这件事上&#xff1a;要么填不进去&#xff0c;要么填了一半&#xff0c;要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程&#xff1a;阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀&#xff1a;什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面&#xff0c;跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →