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

标签:Database Migration

共 8 篇相关文章

IT 累计浏览 2,136

Oracle数据库升级迁移、SPA及统计信息

作者从一次真实的升级迁移讲起:某省级电信运营商将核心CRM系统的Oracle数据库,从IBM小型机上的10g RAC迁移至x86+VMware平台的11g RAC,成本降至十分之一。这引出了一个关键的后续问题:新系统上线后,应采用何种统计信息收集策略? 文章对比了两种方案:迁移旧库统计信息或在新库自动收集。作者团队最终选择了后者,原因是11gR2的自动收集机制已相对完善,且能为后续运维降低风险。但如何确保这一策略在上线时就安全可用?答案在于利用SPA(SQL性能分析器)。 团队使用了生产库三个时段及一个月AWR中的全部SQL,在新库上跑SPA测试。在测试前,先用`dbms_stats.gather_database_stats(options=>'gather auto')`执行一次增量收集。然而,直接这样做会导致新库的直方图信息严重缺失,因为自动收集依赖`col_usage$`表,而新库此表为空。解决方法是在SPA测试过程中,通过执行足够多的SQL来“喂饱”`col_usage$`,让系统“记住”哪些列需要被关注。最终,基于SPA的测试结果,用数十个SQL Profile固化了风险计划,保障了系统平稳上线。 这篇分享的价值在于,它清晰地展示了在大型跨版本迁移中,如何通过组合使用SPA和自动统计信息收集策略,来系统性规避性能风险,而不仅仅是凭经验手工调优。

IT 累计浏览 4,500

TTS实现跨版本迁移数据

这篇讲的是作者如何利用Transportable Tablespaces(TTS)技术,解决数据库跨大版本迁移这一具体问题。 过去,他对TTS的理解可能停留在理论层面,直到偶然发现这个特性竟能用来做数据库升级——这其实是一个相当实用但容易被忽视的场景。文章以一个真实的测试为例,详细记录了从Oracle 9.2.0.4迁移一个表空间到11.2.0.3的完整过程,平台环境均为Linux 32位。 作者没有空谈概念,而是直接切入实践。核心方案就是利用TTS“表空间传输”的能力,将数据(表空间)从一个旧版本数据库“搬运”到一个新版本数据库,从而绕开常规数据泵导出导入或更复杂的升级路径。这个测试的重点,正是验证在跨了一个大版本(从9i到11g)的情况下,该方法的可行性与具体操作细节。 最终,作者通过实践验证了这一路径的可用性。文章的价值在于,它为需要进行类似数据库升级的DBA提供了一个清晰、经过验证的技术选项,并分享了作者从“理解不深”到“亲手测试成功”的完整认知过程,具有直接的参考价值。

IT 累计浏览 4,937

淘宝和阿里巴巴去Oracle化事件 引发数据库技术人员大讨论

这篇讲的是淘宝和阿里云发起的“去Oracle化”技术事件,如何引爆了国内数据库技术圈的一场深度讨论。 文章梳理了这一标杆性事件的来龙去脉:作为国内最早、最大规模的Oracle用户,阿里/淘宝为何要下定决心替换掉这个稳定运行多年的商业数据库?背后的驱动力究竟是成本、技术发展还是自主可控的需求?这个过程并非一帆风顺,涉及海量数据的迁移、复杂业务的改造以及对新数据库内核能力的极限考验。 更关键的是,文章没有停留在事件本身,而是深入到技术社区的脉搏中。它收集了来自一线DBA、数据库内核开发者和架构师的不同声音:有人认为这是国产数据库崛起的必然,有人担忧迁移后的稳定性和运维挑战,也有人冷静分析云原生数据库带来的范式转变。这些观点的碰撞,真实反映了技术演进中的兴奋、焦虑与务实思考。 对于从事数据库、基础架构或云服务的读者而言,这不仅是了解一个行业大事件,更是一次审视自身技术选型和未来路径的契机。文章提供的,正是这样一张复杂而真实的技术变革图景。

IT 累计浏览 1,872

用federated引擎在不同服务器间转移mysql表

这篇讲的是如何用Federated引擎解决一个常见的运维难题:在不进行大规模数据复制的前提下,把MySQL表从一台服务器(my01)迁移到另一台(my02)。作者从磁盘空间不足、数据库拆分、环境同步等现实场景出发,分析了几种常见迁移方法(如mysqldump、文件复制)的局限。 文章的核心方案聚焦于Federated存储引擎。它演示了如何在目标服务器my02上创建一个Federated表,通过指定源服务器my01的连接信息和表名,让my02上的表能直接、实时地访问my01上的原始数据,而无需进行物理数据的搬迁。作者通过实际操作,详细展示了配置过程与注意事项。 这种方法的巧妙之处在于,它将“转移”从物理层面的数据搬运,变成了逻辑层面的远程映射。对于需要临时迁移表以释放磁盘空间,或在不同环境间进行近乎实时数据同步的场景,提供了一种轻量且高效的思路。文章最后也指出,这种模式适合对实时性要求高但变更频率不高的特定场景,是数据库运维工具箱中一个值得了解的技巧。

IT 累计浏览 2,957

Linux(CentOS)下更改/转移MySQL数据库目录

作者从一个实际运维困境出发——MySQL默认安装在/var目录下,随着数据量增长,分区空间告急。这显然是许多服务器管理员都会遇到的典型问题。 文章没有照搬网络上流传有误的教程,而是以作者自己将数据库目录从/var/lib/mysql迁移到/home/mysql_data/mysql的完整操作为例,梳理了具体步骤。其价值在于它来源于真实的测试与操作,针对常见错误流程进行了纠正。 这篇内容为遇到同样磁盘空间问题的技术人员,提供了一份经过验证的、可靠的操作参考。

IT 累计浏览 3,079

核心业务系统数据库平台迁移: Oracle -> MySQL

这篇讲的是一次核心业务系统“脱胎换骨”级的数据库平台迁移实战——从Oracle到MySQL。文章直接点明了启动这场大规模重构的几重现实动因:为了获得更多技术自主控制权、解决数据库线性扩展难题,同时降低对商业软件和高端硬件的依赖。 迁移的范围远不止数据库软件的切换。作者透露,这是一次从软件到硬件的全面重构,而与之相伴的应用架构改造也必然是一次“大换血”。这意味着团队不仅要处理数据迁移与兼容性问题,更要重新设计支撑业务的应用层,挑战巨大。 从计划启动到现在已过去两年,这场“大手术”的复杂性和彻底性可见一斑。文章聚焦于迁移背后的决策逻辑与顶层架构变动,展示了技术团队面对核心系统演进时的魄力与系统性思考。对于面临类似技术债或自主化压力的技术决策者而言,这次从“根”上动刀的历程,提供了极具分量的参考。

IT 累计浏览 2,697

AWR 与 Statspack 数据的导出与迁移

这篇讲的是如何把 Oracle 数据库中 AWR 和 Statspack 的性能数据导出并迁移。作者从这两个工具的数据结构差异出发,指出它们虽然都用来监控数据库性能,但底层表结构不同——比如 AWR 数据存在 DBA_HIST_* 历史表中,而 Statspack 依赖 SNAP 和 STATS$ 前缀的表。直接拷贝表数据或跨版本迁移时,很容易因为快照 ID 冲突、序列号不连续或权限问题导致数据无法加载。文章重点演示了用 EXPDP/IMPDP 工具配合查询过滤来安全导出,以及如何处理导入时的表名映射与外键约束问题。最后通过一个从 11g 迁移到 19c 的实际案例,展示了迁移后如何验证 AWR 报告的连续性,确保历史趋势数据没有断层。

IT 累计浏览 3,092

LAMP缺省环境下,修改mysql的数据存储位置

在LAMP环境中,MySQL数据库默认将数据存储在/var/lib/mysql目录下。对于许多用作Web服务器的系统来说,这个路径可能带来管理上的不便,比如磁盘空间不足、备份困难或性能瓶颈。这篇文章正是从这一常见背景问题出发,详细讲解如何将MySQL的数据存储位置迁移到更合适的自定义路径。 作者首先分析了默认路径的局限性,指出在Web服务器场景下,数据目录可能需要根据硬件配置、安全策略或运维需求进行调整。核心方案是通过一系列清晰的步骤完成迁移:停止MySQL服务,将原数据目录完整复制到新位置(如/data/mysql),然后修改MySQL配置文件(通常为my.cnf中的datadir参数)指向新路径,最后调整目录权限并重启