运维平台的建设思考-元数据管理(三)

简介: 继第一篇,第二篇介绍了关于元数据的一些想法,最近做了一些改进。 对于一部分的元数据抽取大体有下面的两种方式。假设数据源已经做了很大的努力,终于统一起来了。我们现在要通过ssh的方式从源端抽取出数据来。
继第一篇,第二篇介绍了关于元数据的一些想法,最近做了一些改进。
对于一部分的元数据抽取大体有下面的两种方式。假设数据源已经做了很大的努力,终于统一起来了。我们现在要通过ssh的方式从源端抽取出数据来。
一种方式就是直接通过ssh的方式发送对应的查询脚本,然后可以得到一个完整的列表,二次加工即可。

另外一种方式是直接在每台服务器上都部署一个类似agent的载体,每个服务器端都会独立的运行这些脚本内容,然后通过ssh的方式返回即可。
当然下面的图有一些夸张,实际上没有这么多的数据源,只是说明了这种方式。

从个人的角度而言,如果喜欢偷懒类似一劳永逸的方式,我还是喜欢第一种方式,通过ssh发送脚本,然后返回服务端的运行结果。这种方式不需要特别的配置,比较轻巧快捷,当然这种场景的前提是脚本内容不大,调用次数不频繁。
假设调用的脚本为seal.sql,尝试使用下面的方式来调用。语句这么简答,我都有一种胜利在握的感觉了。
cat seal.sql | ssh 10.12.xxxx  'mysql '
但是奇怪的是,没有任何的输出。
反复尝试,在数据库端反复运行了脚本,内容都没有任何的问题。
所以感觉是不是这种方式会有一些特殊字符的影响或者是语句的注释干扰等等。
然后在得不到任何反馈的情况下,先尝试使用本地的方式来运行,远程调用脚本的形式,这种方式奇怪的是也依旧没有任何结果。
尝试了很多种方式,看起来是运行了,但是没有结果输出
# ssh 10.127.33.7 ' cat  /home/dba/Monitor_Hardware/seal.sql|mysql  '
Logging to file '/home/mysql/query.log'
# ssh 10.127.33.7  'mysql < /home/dba/Monitor_Hardware/seal.sql'
Logging to file '/home/mysql/query.log'
# ssh 10.127.33.7  'mysql < /home/dba/Monitor_Hardware/seal.sql > /tmp/a.log'
# ssh 10.127.33.7  "mysql < /home/dba/Monitor_Hardware/seal.sql > /tmp/a.log"
# ssh 10.127.33.7  "/usr/bin/mysql < /home/dba/Monitor_Hardware/seal.sql > /tmp/a.log"
# ssh 10.127.33.7  "/usr/bin/mysql < /home/dba/Monitor_Hardware/seal.sql > /tmp/a.log" # ssh 10.127.33.7 "mysql seal 'select user from mysql.user'"
Logging to file '/home/mysql/query.log'
调用了一个sql语句来验证,发现还是有结果输出的。
# ssh 10.127.33.7 "mysql seal -e 'select user from mysql.user'"
Logging to file '/home/mysql/query.log'
xxxxuser
sys_pm
mysqlmon
..
那么问题在哪里呢?
在反复查看脚本之后,唯一可以假定的就是里面有一个字段值是中文了。
sql语句类似  select xxxxx  join xxxxx  where  device.server_responser in ('杨建荣');
按照这种情况来看,还是来看看是不是中文的影响。
可以使用这种方式来简单验证,传入变量LANG
cat seal.sql | ssh 10.127.33.7 'export LANG=en_US.utf-8;mysql -vv'
还是原来的脚本,加入-vv的选项,这种方式的输出结果为:
Empty set
Bye
看来就是语句运行了,但是因为字符集的不兼容,导致没有查询到任何结果。
这个问题的一个原因就是因为sql语句中的字段值为中文,可以尝试通过其它的code值来代替。
另外一个就是需要考虑字符集的情况,当然明确了这点。这个问题客户端为GBK,数据库端为UTF8,所以还是需要考虑这种差异,最后还是使用发送脚本的方式来运行,使用下面的方式来改进即可。
cat seal.sql |iconv -f GBK -t UTF8 | ssh 10.127.33.7 'export LANG=en_US.utf-8;mysql ' |iconv -f UTF8 -t GBK

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
目录
相关文章
|
10月前
|
运维 监控 自动驾驶
低代码运维平台:是“运维福音”,还是“甩手掌柜”?
低代码运维平台:是“运维福音”,还是“甩手掌柜”?
270 29
|
人工智能 分布式计算 数据管理
DMS+X:GenAI 时代的一站式 Data+AI 平台
在AI技术快速发展的背景下,阿里云DMS + X平台应运而生,通过OneMeta和OneOps两大创新,提供统一元数据服务及一体化Data + AI开发环境。文章详细介绍了DMS + X在数据治理、开发提效及实际案例中的应用,助力企业在GenAI时代实现数字化转型。
|
运维 监控 Linux
WGCLOUD运维平台的分布式计划任务功能介绍
WGCLOUD是一款免费开源的运维监控平台,支持主机与服务器性能监控,具备实时告警和自愈功能。本文重点介绍其计划任务功能模块,可统一管理Linux和Windows主机的定时任务。相比手动配置crontab或Windows任务计划,WGCLOUD提供直观界面,通过添加cron表达式、执行指令或脚本并选择主机,即可轻松完成任务设置,大幅提升多主机任务管理效率。
|
存储 人工智能 运维
阿里云操作系统控制台评测:国产AI+运维 一站式运维管理平台
本文详细评测了阿里云操作系统控制台,作为一款集运维管理、智能助手和系统诊断于一体的工具,它为企业提供了高效管理云资源的解决方案。文章涵盖登录与服务开通、系统管理与实例纳管、组件管理与扩展功能、系统诊断与问题排查以及实时热点分析与性能优化等内容。通过实际操作展示,该平台显著提升了运维效率,并借助AI智能助手简化了复杂操作。建议进一步完善组件库并增强第三方兼容性,以满足更多高级运维需求。
948 3
|
SQL 存储 人工智能
DMS+X构建Gen-AI时代的一站式Data+AI平台
本文整理自阿里云数据库团队Analytic DB、PostgreSQL产品及生态工具负责人周文超和龙城的分享,主要介绍Gen-AI时代的一站式Data+AI平台DMS+X。 本次分享的内容主要分为以下几个部分: 1.发布背景介绍 2.DMS重磅发布:OneMeta 3.DMS重磅发布:OneOps 4.DMS+X最佳实践,助力企业客户实现产业智能化升级
1064 3
DMS+X构建Gen-AI时代的一站式Data+AI平台
|
人工智能 Cloud Native 数据管理
媒体声音|阿里云王远:一站式数据管理平台的智能化跃迁
在DTCC 2024大会上,阿里云数据库产品管理与技术架构部负责人王远与IT168 & ITPUB特约嘉宾薛晓刚就数据库与AI技术的融合、云原生数据库的新趋势及向量数据库的支撑能力等热点话题进行了深入探讨。王远认为,Data+AI不仅是一个概念,已进入实际落地阶段。在智能化时代,单一数据库引擎难以满足多元业务需求,需要构建统一的数据管理能力,以支持不同工作负载。阿里云通过“瑶池”数据库品牌,提供云原生、平台化、一体化和智能化的数据库解决方案,助力用户应对复杂的数据管理挑战。
811 11
|
SQL 人工智能 数据管理
跨云数据管理平台DMS:构建Data+AI的企业智能Data Mesh
跨云数据管理平台DMS助力企业构建智能Data Mesh,实现Data+AI的统一管理。DMS提供开放式元数据服务OneMeta、一站式智能开发平台和云原生AI数据平台,支持多模数据管理和高效的数据处理。结合PolarDB、AnalyticDB等核心引擎,DMS在多个垂直场景中展现出显著优势,如智能营销和向量搜索,提升业务效率和准确性。通过DataOps和MLOps的融合,DMS为企业提供了从数据到AI模型的全生命周期管理,推动数据驱动的业务创新。
1316 0
|
数据采集 SQL DataWorks
DataWorks不是Excel,它是一个数据集成和数据管理平台
【10月更文挑战第5天】本文通过一家电商平台的案例,详细介绍了阿里云DataWorks在数据处理全流程中的应用。从多源数据采集、清洗加工到分析可视化,DataWorks提供了强大的一站式解决方案,显著提升了数据分析效率和质量。通过具体SQL示例,展示了如何构建高效的数据处理流程,突显了DataWorks相较于传统工具如Excel的优势,为企业决策提供了有力支持。
567 3
|
数据采集 DataWorks 数据管理
DataWorks不是Excel,它是一个数据集成和数据管理平台
【10月更文挑战第10天】随着大数据技术的发展,企业对数据处理的需求日益增长。阿里云推出的DataWorks是一款强大的数据集成和管理平台,提供从数据采集、清洗、加工到应用的一站式解决方案。本文通过电商平台案例,详细介绍了DataWorks的核心功能和优势,展示了如何高效处理大规模数据,帮助企业挖掘数据价值。
489 1