“那时候让人们放弃旧版本就是一个问题,”他说,“我认为这与你运行关系型数据库的主要原因有关,那就是在其基础上构建应用程序。而这些应用程序的粘性正是造成这种情况的原因。”
Decneut提到,过去几十年中对向后兼容性的不一致处理方式可能也影响了升级。Lansweeper的代理甚至检测到了几个运行SQL Server 7的实例。在此背景下想要将运行在该版本上的数据库升级到最新、最强大的SQL Server,唯有祝你好运。
目前SQL Server 2022是最新版本,但有44%的实例运行的是2019年的版本。另外,SQL Server 2017占13.5%,2016版占比不到10%,再往前就是古董堆里的更过时的版本。在SQL Server 2014的12%之后,SQL Server 2012占9%。SQL Server 2008则徘徊在接近8%左右。
Decneut认为,企业升级缺乏足够的诱因,因为很多基础商业应用设计得非常坚固,没有多少花哨的功能。后续版本提供的新功能往往没有任何吸引力,因为企业不需要这些东西,他们只需要系统运行即可。
微软的商业模式要求用户迁移到新版本,但事实上企业可能只有在面临重大漏洞时才会关心更新问题。就像Decneut提到的:“只有当房子着火了——存在重大漏洞时,才会有人去关心这个问题。”
“因为我们已经在向云迁移,我们在做这个,在做那个,现在又在考虑人工智能。我认为我们在技术世界中养成了一个不好的习惯,就是对之前的事情不够关心。而很多问题正是由此产生。”
三、改变可能很难,但这并不意味着就不应该去做
不仅是微软,其他数据库供应商也面临客户坚持使用过时代码的问题。
Percona的技术布道者Dave Stokes在采访中如是描述:“一方面,对于SQL Server实例超出支持范围我并不感到惊讶——‘如果没坏,就别修它’这条生活谚语在技术圈同样适用。但我也意识到,这可能成为规避解决棘手问题的托辞。”
Stokes还指出,开发者和DBA可能不愿意被绑定在过时的数据库软件版本上,因为他们错过了新特性和功能。“做出这些改变可能很难,但这并不意味着就不应该去做。开发者不想被绑定在一个已经过期的数据库软件版本上。他们不仅错过了后续版本中修复的错误,还错过了能让他们的工作更轻松的新特性和功能。”
Stokes补充说:“开源数据库也同样面临生命周期结束的挑战。MySQL 5.7版本去年十月就已经达到了生命末期状态,但该版本仍代表了Percona监控和管理报告系统中的很大一部分。Percona提供的超期支持非常广泛。”
随着人工智能等新技术的兴起,企业在追求创新的同时,也必须解决旧有系统的升级难题。企业需要不断更新和维护其IT基础设施的挑战,以保持竞争力和安全性。
>>>>参考资料
https://www.theregister.com/2024/06/17/outdated_sql_server/
整理丨诺亚
来源丨公众号:51CTO技术栈(ID:blog51cto)
dbaplus社群欢迎广大技术人员投稿,投稿邮箱:editor@dbaplus.cn返回搜狐,查看更多