IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:数据导入

共 6 篇相关文章

IT 累计浏览 4,944

关于一次导入数据提示的MySQL server has gone away

这篇讲的是一个看似平常的数据导入操作,如何引出对 MySQL 一个模糊报错的深度追查。作者从同事遇到的“MySQL server has gone away”问题出发,起初通过调大 `max_allowed_packet` 参数解决了表象。但作者敏锐地抓住了这个错误提示的“不友好”之处:并非所有包过大的情况都会报此错误,有时会有更明确的提示。 为了定位这类模糊报错的原因,作者没有停留在“突然想到”,而是设计了复现场景并深入到 MySQL 源码。分析发现,当 SQL 文件过大导致客户端发送网络包失败时,由于重连逻辑中的一处硬编码(`reconnect` 标志为0),MySQL 客户端库直接返回了 `CR_SERVER_GONE_ERROR`,从而掩盖了真正的错误——“发送通信包失败”。作者还展示了如何使用 GDB 调试获取被隐藏的真实错误码,为类似问题提供了系统的排查思路。 文章的核心在于揭示:一个不友好的错误提示背后,可能隐藏着完全不同的故障链路。与其猜测,不如顺着客户端的连接逻辑和错误处理流程去追溯,这才是定位复杂问题的可靠方法。

IT 累计浏览 3,125

利用sql load加载txt,csv及图片到数据库

这篇讲的是如何利用SQL*Loader工具,将MySQL导出的文本文件以及图片批量导入Oracle数据库。作者从一位朋友的求助电话出发——朋友想进行数据迁移,但在电话里始终说不清楚具体操作,于是作者直接通过几个实例来演示解决方案。 核心在于编写一个控制文件(.ctl),来精确定义加载规则。例如加载CSV时,文件里指定了源数据路径、目标表名、使用逗号作为字段分隔符,并明确了数据列(如GRADE, LOSAL, HISAL)与表字段的映射关系。通过类似`LOAD DATA`、`INFILE`、`FIELDS TERMINATED BY`这些关键指令,就能告诉Oracle如何解析和装填数据。文章不仅覆盖了标准的txt和csv文本,还提及了对图片等二进制文件的加载思路。 通过这种“直接上代码”的实战分享,作者把数据库导入这个常见但繁琐的运维操作,拆解成了可复制的步骤。对于需要处理跨平台数据迁移的DBA或开发者来说,这种基于控制文件的方案提供了清晰、可扩展的模板。

IT 累计浏览 3,809

MySQL也能并发导入数据

这篇讲的是一个实用技巧,解决MySQL导入SQL备份文件时令人头疼的效率问题。作者从“导入备份不能并发导致慢”这个普遍痛点出发,提出了一种清晰的解决思路:与其等待整个大文件串行执行,不如主动将它“化整为零”。 具体方案是,先通过脚本计算SQL文件的总行数与大小,然后按设定的单文件尺寸阈值,将完整的备份文件切分成多个小片段。在初始化好表结构后,便能并发地导入这些小文件。作者分享了从计算、切分到最终并发执行的关键步骤,让这个方法具有很强的操作性。 文章的价值在于转换了解决问题的视角,不依赖于MySQL自身功能的改进,而是通过外部的文件处理与并发控制,有效提升了数据恢复的吞吐量。对于经常需要处理大型SQL备份的DBA或开发者来说,这提供了一个可直接参考的性能优化方案。

IT 累计浏览 4,509

pqsql/mysql单表导出与导入命令

这篇文章详细比较了 PostgreSQL 与 MySQL 在单表数据导出与导入上的具体操作差异。对于经常需要在两个主流数据库间迁移数据,或只针对特定表进行备份恢复的开发者来说,这是一个非常实用的对照指南。 核心内容聚焦于操作命令层面。文章不仅给出了 MySQL 下利用 `mysqldump` 配合 `--where` 等参数导出指定表(或表的子集)再导入的标准流程,也介绍了 PostgreSQL 中使用 `pg_dump` 与 `pg_restore` 完成类似任务的命令与技巧。这些步骤通常是在进行数据迁移、测试环境数据准备或快速备份时用到的。 作者指出了二者的关键区别:MySQL 的操作相对直接,常与 SQL 语句紧密结合;而 PostgreSQL 的工具链更为独立,生成的是自定义格式的归档文件,恢复时也遵循特定的工具逻辑。理解这些差异,能帮助开发者根据具体场景和数据库特性,选择更高效、更可靠的数据搬运方案。

IT 累计浏览 4,004

常用的mysql工具

这篇讲的是MySQL数据导入导出场景下几个核心工具的选型比较。作者没有泛泛罗列,而是直接从最常见的痛点出发:如何高效、安全地完成数据的备份与迁移。 文章重点对比了三款工具:经典的mysqldump、MySQL官方推出的并行工具mysqlpump,以及社区广受欢迎的mydumper。针对每个工具,都剖析了它的核心工作原理与性能特点。例如,mysqldump作为默认选择,胜在稳定可靠,适合中小型数据量;而mydumper则通过多线程并行导出,显著提升了大数据库(数百GB以上)的备份速度。 文中最实用的部分,是总结了不同场景下的选择建议:对数据一致性要求极高的生产环境,或许还是得回归mysqldump;对于追求速度的开发测试或大表备份,mydumper是更优解。这种基于具体约束条件的决策分析,为读者提供了清晰的行动参考。

IT 累计浏览 2,984

Mysql中的导数据脚本

这篇文章讲的是,作者在对线上数据库进行初始化时,面对海量数据需要导入的场景,采用了MySQL自带的`load data`命令作为核心解决方案。 相比于逐条执行`INSERT`语句,`load data`的优势在于极高的导入效率,尤其适合处理GB级别的初始数据集。文章分享了从准备格式化数据文件(如CSV)到编写具体导入脚本的完整过程,涵盖了指定字段分隔符、处理字符集、控制事务提交频率等实际操作细节。作者还提及了在实施中可能遇到的典型问题,比如如何处理文件路径权限或如何中断后快速恢复,给出了针对性的配置建议。 最终,通过一个相对简单的Shell脚本结合`load data`命令,作者成功实现了大规模数据的快速、稳定初始化。这篇分享为需要进行数据库初始化或大批量数据迁移的开发者,提供了一个经过验证的、高效且开销低廉的实践路径。