现在学Oracle是49年入国军么?
今天周末,不聊技术,聊聊大家说的最多的一个话题
1.说说数据库产品和生态
oracle在整个数据库行业还是领先优势明显,看DB-Engines Ranking的排名Oracle仍旧是遥遥领先

当然国产的数据库也有多优秀的产品,比如我们查看墨天轮数据库排行,至少排在前10的数据库实际使用的人还是不少,相对来说头部的产品可靠度也较高。

但是毕竟Oracle起步早,积累的经验多,就我的使用观察,论产品成熟度,运行速度、系统稳定性来说都是一流(仅个人主观观点,有一定的局限性,至少我没亲眼见到哪个医院、金融系统、制造业的核心数据库用的国产)。
论数据库的生态环境,Oracle可以说是除了源码没开源,剩下的几乎都开源了,学习资料、分享经验、社区活跃度都是十分的高,可以说是想学Oracle除了官方资料,民间的资料、工具一大把,对应的认证培训机构也多如牛毛。只要肯用心,一定能学好。
在这一点上国产数据库可能稍微逊色,前些年想学国产的数据库那就得去原厂培训,搞的价格也十分昂贵,直逼Oracle的培训。现在国产的数据库厂商们也开始积极搞社区,线上免费培训、认证,让很多人也薅到羊毛,学习考个认证,但是有些细节原理还有待考究,有些工具需要官方提供,有些问题解决不了只能找数据库的研发人员来提单子,不像Oracle的问题,总能找到大牛直接解决,各种开源的工具脚本到处都是。
就产品成熟度、生产环境来说,国产数据库和Oracle还是有一定的差距,这个我觉得大家都认了吧?
当然我也遇到过不分应用场景、不懂架构的人无脑鼓吹国产分布式数据库,言论简直逆天,放给大家看看纯属一乐。



2.说说数据库市场占有情况
成立于1977年的Oracle最开始就是搞数据库起家的,从无到有己经累计了大量的经验、客户。医疗、制造、金融等等重要的核心系统里都有Oracle的身影出现。
反观国产数据库,在信创到来之前,一直还处于不温不火的状态,实际在重要领域应用的场景还是相对较少的。这也和投资环境、资本运作有一定的关系(毕竟当时搞国产数据库不怎么赚钱)。
在信创时代到来后,国产数据库瞬间爆发,仅墨天轮收录的国产数据库在这几年就达到290家!但是客户真正被替换的还是低负载、办公系统、周边业务、历史查询数据等不十分重要的系统来进行替换,真正把核心数据库全替换成纯国产的案例目前不是非常的多。即使有这样的项目,也都是厂家直接来做,客户真正敢选择的也就是头部的几家数据库,其它小众国产数据库几乎都停留在宣传阶段,实际案例少之又少。
就我个人观察,短期内重要的核心oltp生产业务系统数据库替换还是有难度,但是信创替代毕竟是大趋势,相信未来会淘汰一大堆来骗钱的产品,真正能留下的也是少数头部产品,他们才是有价值再进一步发展的产品。
3.说说大家比较关心的就业行情
从职业上来说,dba这份工作本身就是个小众职业,从业的人数在整个it圈相对来说都是少数,可以说是小公司请不起DBA,大公司真正的DBA也是屈指可数,这个行业对经验要求极高(如果你请来的人不靠谱,那你的数据就危险了),通常薪资也属于中上等。
以上海为例,就目前看一线城市的dba招聘情况,有工作经验的dba工资都在20k左右,虽说和大厂或者华为传说中动辄年薪百万的职位来说有一些差距,但是这个工资在纯技术的岗位中来说也算中上等了。


抛开上面的公开招聘不谈,也有很多经验丰富的DBA年薪百万,内推的DBA职位工资也十分可观,甚至还有赶上时代风口红利早就财富自由了(这是个例)。
从公开的招聘渠道上来说,大多数都是招mysql/oracle dba,还有一些在招PG的DBA。
就拿某些国产数据库公司dba招聘要求来说,基本都要求你会oracle,你要是有个ocp/ocm认证,他们多半是认可你的。

就我所知,某一线大厂的国产数据库产品己经上到生产使用,但是仍然把Oracle端做为备库同步(可能是以防不测切换吧,这个是我瞎猜的!)。
大多其它国产的头部产品们也做了这种适配同步,Oracle仍然还活在客户的IT系统中。
所以说无论如何,你要是搞DBA,Oracle一定是你不能跳过,总是要会的。
4、总结
1、毕竟国产替代还需要很长一段时间,这不是说换就能立马换的,目前Oracle的相关工作还是有的。
2、就算你是从事国产数据库工作的,学习Oracle之后再学国产数据库我觉得对你还是有很大帮助的,毕竟你搞国产数据库也得和Oracle打交道。
国产的数据库即使是一线头部产品,还是需要不停的打磨,真正的用起来,才能适应各种各样的环境,解决产品问题。就算是Oracle刚起步的时候也是不成熟的产品,也是一步一步发展起来的,也希望国产的数据库越来越好。
相关文章:
现在学Oracle是49年入国军么?
今天周末,不聊技术,聊聊大家说的最多的一个话题 先说明一下,防止挨喷😆 本人并不是职业dba,对数据库就是爱好,偶尔兼职,以下仅个人观点分析,如有不同观点请轻喷,哈哈&…...
【回溯】组合问题||
给定一个候选人编号的集合 candidates 和一个目标数 target ,找出 candidates 中所有可以使数字和为 target 的组合。 candidates 中的每个数字在每个组合中只能使用 一次 。 注意:解集不能包含重复的组合。 示例 1: 输入: candidates [10,1,2,7,6,…...
【c语言】字符函数和字符串函数(下)
前言 书接上回 【c语言】字符函数和字符串函数(上) 上一篇讲解的strcpy、strcat、strcmp函数的字符串长度是不受限制的 而本篇strncpy、strncat、strcnmp函数的字符串长度是受限制的 欢迎关注个人主页:逸狼 创造不易,可以点点赞吗~ 如有错误,…...
基于Java的艺培管理解决方案
✍✍计算机毕业编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java、…...
Python算法题集_实现 Trie [前缀树]
Python算法题集_实现 Trie [前缀树] 题208:实现 Trie (前缀树)1. 示例说明2. 题目解析- 题意分解- 优化思路- 测量工具 3. 代码展开1) 标准求解【定义数据类默认字典】2) 改进版一【初始化字典无额外类】3) 改进版二【字典保存结尾信息无额外类】 4. 最优算法5. 相关…...
pytorch简单新型模型测试参数
import torch from torch.nn import Conv2d,MaxPool2d,Sequential,Flatten,Linear import torchvision import torch.optim.optimizer from torch.utils.data import DataLoader,dataset from torch import nn import torch.optim.optimizer# 建模 model nn.Linear(2,1)#损失 …...
Unity中URP下实现水体(水面高光)
文章目录 前言一、实现高光反射原理1、原理:2、公式: 二、实现1、定义 _SpecularColor 作为高光反射的颜色2、定义 _SpecularIntensity 作为反射系数,控制高光反射的强度3、定义 _Smoothness 作为高光指数,用于模型高光范围4、模拟…...
26.HarmonyOS App(JAVA)列表对话框
列表对话框的单选模式: //单选模式 // listDialog.setSingleSelectItems(new String[]{"第1个选项","第2个选项"},1);//单选 // listDialog.setOnSingleSelectListener(new IDialog.ClickedListener() { // Override …...
五种主流数据库:常用字符函数
SQL 字符函数用于字符数据的处理,例如字符串的拼接、大小写转换、子串的查找和替换等。 本文比较五种主流数据库常用数值函数的实现和差异,包括 MySQL、Oracle、SQL Server、PostgreSQL 以及 SQLite。 字符函数函数功能MySQLOracleSQL ServerPostgreSQ…...
软考笔记--企业资源规划和实施
企业资源是指企业业务活动和战略运营的事物,包括人、财和物,也包括信息资源,同时也包括企业的内部和外部资源。企业资源可以归纳为物流,资金流和信息流。企业资源规划(ERP)是只建立在信息技术基础上&#x…...
React歌词滚动效果(跟随音乐播放时间滚动)
首先给audio绑定更新时间事件 const updateTime e > {console.log(e.target.currentTime)setCurrentTime(e.target.currentTime);};<audiosrc{currentSong.url}ref{audio}onCanPlay{ready}onEnded{end}onTimeUpdate{updateTime}></audio>当歌曲播放时间改变的时…...
java面试题之mybatis篇
什么是ORM? ORM(Object/Relational Mapping)即对象关系映射,是一种数据持久化技术。它在对象模型和关系型数据库直接建立起对应关系,并且提供一种机制,通过JavaBean对象去操作数据库表的数据。 MyBatis通过…...
Java的编程之旅19——使用idea对面相对象编程项目的创建
在介绍面向对象编程之前先说一下我们在idea中如何创建项目文件 使用快捷键CtrlshiftaltS新建一个模块,点击“”,再点New Module 点击Next 我这里给Module起名叫OOP,就是面向对象编程的英文缩写,再点击下面的Finish 点Apply或OK均可 右键src…...
docker build基本命令
背景 我们经常会构建属于我们应用自己的镜像,这种情况下编写dockerfile文件不可避免,本文就来看一下常用的dockerfile的指令 常用的dockerfile的指令 首先我们看一下docker build的执行过程 ENV指令: env指令用于设置shell的环境变量&am…...
nginx高级配置详解
目录 一、网页的状态页 1、状态页的基本配置 2、搭配验证模块使用 3、结合白名单使用 二、nginx 第三方模块 1、echo模块 1.1 编译安装echo模块 1.2 配置echo模块 三、nginx变量 1、内置变量 2、自定义变量 四、自定义图标 五、自定义访问日志 1、自定义日志格式…...
小程序--分包加载
分包加载是优化小程序加载速度的一种手段。 一、为什么进行分包 小程序限制单个包体积不超过2M; 分包可以优化小程序页面的加载速度。 二、启用/使用分包语法subPackages subPackages:下载app.json文件中 root:分包所在的目录 pages&#x…...
R语言【base】——writeLines()
Package base version 4.2.0 Description 向连接写入文本行。 Usage writeLines(text, con stdout(), sep "\n", useBytes FALSE) Arguments 参数【text】:一个字符向量。 参数【con】:一个 connection 对象 或 一个字符串。 参数【se…...
微信小程序-人脸检测
微信小程序的人脸检测功能,配合蓝牙,配合ESP32 可以实现一些有趣的玩具 本文先只说微信小程序的人脸检测功能 1、人脸检测使用了摄像头,就必须在用户隐私权限里面声明。 修改用户隐私声明后,还需要等待审核,大概一天 …...
微信小程序自制动态导航栏
写在前面 关于微信小程序导航栏的问题以及解决办法我已经在先前的文章中有提到,点击下面的链接即可跳转~ 🤏微信小程序自定义的导航栏🤏 在这篇文章中我们需要做一个这样的导航栏!先上效果图 👇👇…...
金融知识分享系列之:五日线
金融知识分享系列之:五日线 一、股票均线二、五日线三、五日线加量能三、五日线案例四、五日线案例五、五日线案例六、五日线案例七、五日线案例八、五日线案例 一、股票均线 股票均线是一种用于平滑股票价格的指标。它是根据一段时间内的股票价格计算得出的平均值…...
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造,完美适配AGV和无人叉车。同时,集成以太网与语音合成技术,为各类高级系统(如MES、调度系统、库位管理、立库等)提供高效便捷的语音交互体验。 L…...
conda相比python好处
Conda 作为 Python 的环境和包管理工具,相比原生 Python 生态(如 pip 虚拟环境)有许多独特优势,尤其在多项目管理、依赖处理和跨平台兼容性等方面表现更优。以下是 Conda 的核心好处: 一、一站式环境管理:…...
深入剖析AI大模型:大模型时代的 Prompt 工程全解析
今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...
盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来
一、破局:PCB行业的时代之问 在数字经济蓬勃发展的浪潮中,PCB(印制电路板)作为 “电子产品之母”,其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透,PCB行业面临着前所未有的挑战与机遇。产品迭代…...
P3 QT项目----记事本(3.8)
3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...
JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作
一、上下文切换 即使单核CPU也可以进行多线程执行代码,CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短,所以CPU会不断地切换线程执行,从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...
深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
使用 SymPy 进行向量和矩阵的高级操作
在科学计算和工程领域,向量和矩阵操作是解决问题的核心技能之一。Python 的 SymPy 库提供了强大的符号计算功能,能够高效地处理向量和矩阵的各种操作。本文将深入探讨如何使用 SymPy 进行向量和矩阵的创建、合并以及维度拓展等操作,并通过具体…...
云原生安全实战:API网关Kong的鉴权与限流详解
🔥「炎码工坊」技术弹药已装填! 点击关注 → 解锁工业级干货【工具实测|项目避坑|源码燃烧指南】 一、基础概念 1. API网关(API Gateway) API网关是微服务架构中的核心组件,负责统一管理所有API的流量入口。它像一座…...
