数据库管理-第169期 震惊,ACE装国产数据库花了两周(20240409)

2024-04-09 12:36

本文主要是介绍数据库管理-第169期 震惊,ACE装国产数据库花了两周(20240409),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

数据库管理169期 2024-04-09

  • 数据库管理-第169期 震惊,ACE装国产数据库花了两周(20240409)
    • 1 硬件兼容性
    • 2 组件的割裂
    • 3 操作的放大
    • 总结

数据库管理-第169期 震惊,ACE装国产数据库花了两周(20240409)

作者:胖头鱼的鱼缸(尹海文)
Oracle ACE Associate: Database(Oracle与MySQL)
国内某科技公司 DBA总监
10年数据库行业经验,现主要从事数据库服务工作
拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证
墨天轮MVP、认证技术专家、年度墨力之星,ITPUB认证专家,OCM讲师
圈内拥有“总监”、“保安”、“国产数据库最大敌人”等称号,非著名社恐(社交恐怖分子)
公众号:胖头鱼的鱼缸;CSDN:胖头鱼的鱼缸(尹海文);墨天轮:胖头鱼的鱼缸;ITPUB:yhw1809。
除授权转载并标明出处外,均为“非法”抄袭。

首先终于从泰国清迈回来了,那边挺热的,白天都是40℃左右,而且还没到雨季,纯纯干热。加上同行人的特种兵旅游风格,这算是第一次外出旅游想早点回来。在旅游期间还发现成都多了一个“6A级景区”其实本期述说的事情是清明节前发生的,发生在我们ACE小群的吐槽,某个ACE安装以单机方式安装某国产分布式数据库的时候花了差不多两周的时间。当然在这段时间还了解到了一些其他关于国产数据库的吐槽(包括但不限于安装),本期一一呈现,让大家在踏入国产数据库之前能够至少做好一些心理建设。
手动保命一下:本期内容不涉及任何具体厂商和具体产品,你可以把本期展现的内容当成愚人节的延续,如有巧合,纯属不幸。

1 硬件兼容性

还是先说说安装这件事情,其实最主要的问题是来自于硬件的兼容性问题,对于数据库软件来说,其实主要是CPU(当然不排除以后数据库的AI功能加强了,还得考虑GPU适配的问题)。这次的安装趣闻就是发生在多个型号的同构CPU上,即使是相同的架构的CPU,CPU的flag内容不一样,都会造成安装失败,需要对安装涉及的很多文件进行调整。
306979f046c447eebe73e2161f5cd073.jpg

2 组件的割裂

其实把一个软件设计成多个组件无可厚非,可以减小每个组件(或者说叫功能)的开发难度,但是还是回到以前说过很多次的一个内容:数据库是一个系统工程,每个部分都是协同工作的,任何改动、调整都是牵一发而动全身。但是在很多国产数据库的安装、使用过程中,会发现各个组件之间感觉来自于不同地方,一点协同性都没有。经常是为了解决A组件的问题,导致B组件出现异常,AB组件调和好之后,C组件又出问题,C组件处理好了,A又双叒出问题了。要让所有组件平稳的运行起来需要达到一个极其精准的平衡点(这个平衡点在不同的软硬件环境下还常常是不一样的)。有时候就给人一种汽车的四个轮子对着不同的方向,做四轮定位又非常困难。而且一旦涉及到数据库的升级操作,经常需要重新去寻找那个平衡点。
53572b30f7734b0ca1223990ac5afee5.jpg

3 操作的放大

这个举几个栗子:

  • 需要对表进行修改字段类型DDL操作,Offline DDL直接跑不动,Online DDL要好几个小时
  • 某分布式数据库迁移,评估了一大堆方案,最后发现还是用移动硬盘最快,然后花了8个月
  • 某OA替换国产数据库,操作时间平均为原来的30倍以上
  • 由于版本升级需要导数据,用原厂的工具。20G的数据持续不停地导了30-40个小时
  • 某重点系统迁移完成后,系统中的人没了,后续得靠人工去比对补录
    57699d417c4c4d999790a606079f75a2.jpg

总结

还是那句话,国产数据库在产品化上面还做得非常差,道阻且长,仍需努力。
老规矩,不知道写了些啥。
最后的最后,宣传一下:
44db54c892f66684a6caa0dbfeca620.jpg

这篇关于数据库管理-第169期 震惊,ACE装国产数据库花了两周(20240409)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/888167

相关文章

在Java中基于Geotools对PostGIS数据库的空间查询实践教程

《在Java中基于Geotools对PostGIS数据库的空间查询实践教程》本文将深入探讨这一实践,从连接配置到复杂空间查询操作,包括点查询、区域范围查询以及空间关系判断等,全方位展示如何在Java环... 目录前言一、相关技术背景介绍1、评价对象AOI2、数据处理流程二、对AOI空间范围查询实践1、空间查

Python+PyQt5实现MySQL数据库备份神器

《Python+PyQt5实现MySQL数据库备份神器》在数据库管理工作中,定期备份是确保数据安全的重要措施,本文将介绍如何使用Python+PyQt5开发一个高颜值,多功能的MySQL数据库备份工具... 目录概述功能特性核心功能矩阵特色功能界面展示主界面设计动态效果演示使用教程环境准备操作流程代码深度解

MySQL数据库实现批量表分区完整示例

《MySQL数据库实现批量表分区完整示例》通俗地讲表分区是将一大表,根据条件分割成若干个小表,:本文主要介绍MySQL数据库实现批量表分区的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录一、表分区条件二、常规表和分区表的区别三、表分区的创建四、将既有表转换分区表脚本五、批量转换表为分区

linux服务之NIS账户管理服务方式

《linux服务之NIS账户管理服务方式》:本文主要介绍linux服务之NIS账户管理服务方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、所需要的软件二、服务器配置1、安装 NIS 服务2、设定 NIS 的域名 (NIS domain name)3、修改主

MySQL Workbench工具导出导入数据库方式

《MySQLWorkbench工具导出导入数据库方式》:本文主要介绍MySQLWorkbench工具导出导入数据库方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝... 目录mysql Workbench工具导出导入数据库第一步 www.chinasem.cn数据库导出第二步

Mysql数据库中数据的操作CRUD详解

《Mysql数据库中数据的操作CRUD详解》:本文主要介绍Mysql数据库中数据的操作(CRUD),详细描述对Mysql数据库中数据的操作(CRUD),包括插入、修改、删除数据,还有查询数据,包括... 目录一、插入数据(insert)1.插入数据的语法2.注意事项二、修改数据(update)1.语法2.有

查看MySQL数据库版本的四种方法

《查看MySQL数据库版本的四种方法》查看MySQL数据库的版本信息可以通过多种方法实现,包括使用命令行工具、SQL查询语句和图形化管理工具等,以下是详细的步骤和示例代码,需要的朋友可以参考下... 目录方法一:使用命令行工具1. 使用 mysql 命令示例:方法二:使用 mysqladmin 命令示例:方

Python+PyQt5开发一个Windows电脑启动项管理神器

《Python+PyQt5开发一个Windows电脑启动项管理神器》:本文主要介绍如何使用PyQt5开发一款颜值与功能并存的Windows启动项管理工具,不仅能查看/删除现有启动项,还能智能添加新... 目录开篇:为什么我们需要启动项管理工具功能全景图核心技术解析1. Windows注册表操作2. 启动文件

MySQL数据库约束深入详解

《MySQL数据库约束深入详解》:本文主要介绍MySQL数据库约束,在MySQL数据库中,约束是用来限制进入表中的数据类型的一种技术,通过使用约束,可以确保数据的准确性、完整性和可靠性,需要的朋友... 目录一、数据库约束的概念二、约束类型三、NOT NULL 非空约束四、DEFAULT 默认值约束五、UN

gradle第三方Jar包依赖统一管理方式

《gradle第三方Jar包依赖统一管理方式》:本文主要介绍gradle第三方Jar包依赖统一管理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录背景实现1.顶层模块build.gradle添加依赖管理插件2.顶层模块build.gradle添加所有管理依赖包