首页
学习
活动
专区
圈层
工具
发布

Oracle大佬离职,怒喷MySQL是“糟糕的数据库”……

Oracle 前首席软件工程师兼 MySQL 优化器团队成员 Steinar Gunderson 在帖子中表示自己离职的原因比较复杂,但想在这里聊几句“憋了五年的真心话”——“MySQL 是款超烂的数据库...他进一步吐槽到:“真正让我不爽的是那些坚持认为 MySQL 一切良好的家伙(好像大多数 MySQL 用户和开发者根本没怎么用过其他数据库)。...“最终,我们发现无论是强大的人才储备还是 Oracle 决胜云端的雄心,都不足以为 MySQL 争取到充足的重构资源、自然无法让它成为真正具有市场竞争力的产品。”...Hörmann 的公司专门开发从 Oracle 到 Postgres 的迁移工具,他在采访中表示“每当有客户问他该为项目选择哪种数据库时,我的回答总是 Postgres;即使是在接触了 Oracle 二十年之后...加入一个公司的时候,除非是创业公司,或者你是 CTO、VP、总监级别的,否则大部分的技术选型早已应该尘埃落定。尤其是数据库,一旦选择,再迁移的代价非常大。

1.4K20

数据库:MySQL、SqlServer、Oracle对比

一、MySQL 优点: 软件体积小、速度快、免费开源;  跨平台;  因为是开源数据库,提供的接口支持多种语言连接操作 ; MySQL的核心程序是采用完全的多线程编程。...并且是轻量级的进程,它可以灵活地为用户提供服务,而不过多的系统资源。 MySql拥有一个非常灵活而且安全的权限和口令管理系统。...连接MySql服务器, 使得应用被扩展;  支持大型的数据库, 可以方便地支持上千万条记录的数据库。...MySQL可用于Unix,Windows,以及OS/2等平台,因此它可以用在个人电脑或者是服务器上。...)语言,这是对习惯于企业级数据库的程序员的最大限制;  MySQL的价格随平台和安装方式变化。

5.5K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    除了 MySQL,这些数据库你都认识么?

    大家好,我是鱼皮,今天和大家聊聊数据库。 什么是数据库? 这个问题相信对学编程的朋友们来说过于简单了,大家想必都是增删改查的好手。 但如果让你说出 10 种不同类型的数据库,阁下该如何应对?...比较经典的关系型数据库产品有 MySQL、Oracle、PostgreSQL、Microsoft SQL Server 等。其中,MySQL 由于开源又易学,已经成为后端开发同学必学的数据库技术。...对于大多数项目,用 MySQL 等关系型数据库来存储数据就足够了。但关系型数据库不是银弹!在某些场景下,比如要存储的数据间没有关系时,它并不是最佳的选择。...解决特定问题的数据库 相信很多同学对数据库的印象就停留在 MySQL 和 Redis。的确,以上两类数据库几乎已经可以解决所有问题! 但是,未必是最适合的。...向量数据库 向量数据库是专门用于存储和处理 高维向量数据 的数据库系统。 什么是向量?每个向量可以表示一个实体,并且包含多个维度的数值。

    2.6K70

    Jmeter连接Mysql和Oracle数据库

    一、连接Mysql数据库 1. jmeter要连接mysql数据库,首先得下载mysql jdbc驱动包(注:驱动包的版本一定要与你数据库的版本匹配,驱动版本低于mysql版本有可能会导致连接失败报错)...我这里下载的是mysql-connector-java-5.1.28.jar,**驱动下载方法见文章末尾介绍** 2....jdbc请求和其他请求一样,支持参数化和断言,可以根据需要自行添加 二、连接Oracle数据库 1....和Mysql一样,首先需要下载oracle的驱动包ojdbc14.jar,在oracle的安装目录可以找到, oracle安装目录下(oracle\product\10.2.0\db_1\jdbc\lib...上述报错是由于sid连接失败导致,需要检查oracle安装目录,oracle\product\10.2.0\db_1\network\ADMIN下的tnsnames.ora文件,配置如下,此时SID=emsuat

    5.7K41

    Jmeter连接Mysql和Oracle数据库

    一、连接Mysql数据库 Ⅰ。所有jmeter基本组件功能本文不做介绍。...jmeter要连接mysql数据库,首先得下载mysql jdbc驱动包(注: 驱动包的版本一定要与你数据库的版本匹配,驱动版本低于mysql版本有可能会导致连接失败报错)我这里下载的是mysql-connector-java...jdbc请求和其他请求一样,支持参数化和断言,可以根据需要自行添加 二、连接Oracle数据库 上述报错是由于sid连接失败导致,需要检查oracle安装目录,oracle\product\10.2.0...提示该错误是由于没有把jdbc驱动包放到相应目录,把ojdbc14.jar放到jmeter主目录lib/ext下面,重启jmeter,问题解决 Ⅰ。...和Mysql一样,首先需要下载oracle的驱动包ojdbc14.jar,在oracle的安装目录可以找到, oracle安装目录下(oracle\product\10.2.0\db_1\jdbc\lib

    5.5K20

    Oracle、MySQL、PG是如何处理数据库“半页写”的问题的?

    数据库“断页”是个很有意思的话题,目前任何数据库应该都绕不过去。...我们知道数据库的块大小一般是8k、16k、32k,而操作系统块大小是4k,那么在数据库刷内存中的数据页到磁盘上的时候,就有可能中途遭遇类似操作系统异常断电而导致数据页部分写的情况,进而造成数据块损坏,数据块损坏对于某些数据库是致命的...既然对于断页问题数据库都可能遇到,那么再来看看主流数据库是如何避免发生断页的。...再看看oracle,oracle对于断页比较“看得开”,他不会从数据库层面去避免发生断页问题,数据库内部没有机制保证断页的处理,它通过其他方面比如rman恢复、adg等方式保证出了问题进行恢复。...这种方式对性能也有一定影响,但是相比mysql的方式我觉得要好一些,mysql相当于任何一个脏页刷盘前都需要写两份,pg只是在数据块第一次发生变更的时候写入xlog中。

    2.1K20

    oracle,postgre和mysql数据库学习

    每天分享技术栈,开发工具等 一、数据库简介与核心区别‌ ‌特性‌ ‌Oracle‌ ‌PostgreSQL‌ ‌MySQL‌ ‌类型‌ 商业数据库(企业级) 开源数据库(企业级扩展性强) 开源数据库(轻量级...时间函数‌:Oracle用SYSDATE,PostgreSQL用NOW(),MySQL用CURRENT_TIMESTAMP。 ‌2....四、核心概念对比‌ ‌功能‌ ‌Oracle‌ ‌PostgreSQL‌ ‌MySQL‌ ‌事务隔离级别‌ 支持所有SQL标准级别 支持所有级别 默认REPEATABLE-READ ‌JSON支持‌ 12c...对比思考‌: 如果需要一个支持地理数据的数据库,你会选哪个? 自增ID的实现方式为何不同? ‌六、学习建议‌ ‌重点理解‌:三类数据库的设计哲学(企业级 vs 功能丰富 vs 轻量高效)。 ‌...延伸阅读‌: Oracle官方文档:Oracle Docs PostgreSQL教程:PG Exercises MySQL手册:MySQL Tutorial 通过第一天的学习,你已经掌握了三种数据库的基础操作和核心差异

    65610

    使用Python操作MySQL和Oracle数据库

    MySQL和Oracle。...那么对于DBA来说数据库是一个说不完的话题,这里也不打算展开说明,请自行在Windows下安装MySQL和Oracle即可。...、MySQL、Postgre、Oracle、MS-SQL、SQLServer和Firebird,它的目标是作为企业级持久性模型提供开源的服务。...Python连接数据库之前,得先准备好MySQL数据库,由于篇幅问题这里不再说明软件下载和安装过程,请自行Google,只简单介绍环境配置,MySQL采用5.7.17GPL版本,数据库是本地数据库,端口为默认的...连接Oracle数据库 使用Python连接Oracle时,和MySQL不同的是必须要启用监听,这里使用的是Windows版本的Oracle11g,具体的安装过程这里不再演示,如若需要Windows下Oracle11g

    4K10

    用ChatGPT分析Oracle、MySQL、PostgreSQL数据库

    Oracle数据库: Oracle数据库是一种功能强大、高性能和可扩展性好的关系型数据库管理系统(RDBMS)。它具有广泛的应用领域,从中小型企业到大型企业和跨国公司都在使用它。...MySQL数据库: MySQL是一种开源的关系型数据库管理系统,广泛应用于Web应用程序和中小型企业。它具有简单易用、高性能和可靠性等特点。...举例说明:在社交媒体应用中,MySQL数据库可以通过水平分片来处理大量的用户数据,并实现高并发的社交互动。 安全性指标:MySQL数据库提供了基本的安全功能,如用户和权限管理。...PostgreSQL数据库: PostgreSQL是一种功能强大的开源关系型数据库管理系统,具有高度的可靠性、可扩展性和数据完整性。...总体来说,Oracle数据库在性能、可靠性和数据安全方面具有出色的表现,但在运维复杂性方面较高。MySQL数据库在易用性和可扩展性方面较为突出,适合中小型企业和简单应用场景。

    1.5K30

    Oracle、PostgreSQL、MySQL 数据库安全实践优化

    用户权限分层模型 层级 Oracle 方案 PostgreSQL 方案 MySQL 方案 系统级 限制 SYSDBA,仅允许双因素认证访问 禁用 postgres 超级用户直接登录 限制 root 用户本地登录...权限生命周期管理 阶段 Oracle PostgreSQL MySQL 创建 密码有效期:PASSWORD_LIFE_TIME 90 密码复杂度:CREATE ROLE ......数据库层防御增强 策略 Oracle PostgreSQL MySQL 存储过程 限制动态 SQL 执行权限(AUTHID DEFINER) 使用 SECURITY DEFINER 封装逻辑 禁用 EXECUTE...通用加固步骤 禁用默认账户(Oracle 的 SYS、PG 的 postgres、MySQL 的 root 远程访问) 启用密码复杂度策略(Oracle Profile、PG 的 passwordcheck...,可系统性解决数据库安全问题。

    81710

    什么是PostgreSQL?跟MySQL、Oracle比强在哪?

    数据库与主流数据库MySQL和Oracle的相同点和区别。...MySQL的复制是异步或半同步的逻辑同步,这存在两个问题 一是在大事务下会导致比较大的延迟;二是容易导致数据库的不一致,原因是逻辑复制容易导致数据的不一致性,而MySQL的双层日志会让这个问题变得更复杂...一些第三方公司改造MySQL源代码以实现同步复制,但这些方案要么是没有开源,要么是已开源却又不是很稳定,所以,对于普通用户来说,如何实现零数据库丢失的同步复制是一个令人头疼的问题。...从功能上说,PostgreSQL可以与Oracle数据库媲美。Oracle数据库是目前功能最强大的商业数据库,PostgreSQL则是功能最强大的开源数据库。...PostgreSQL与Oracle一样,PostgreSQL的WAL日志与Oracle的Redo日志都是用于记录物理块数据的变化的,这与MySQL的binlog是不一样的。

    10.9K10

    【MySql】MySQL数据库--什么是MySQL的回表 ?

    专栏持续更新中:MySQL详解 一、背景 先要从 InnoDB 的索引实现说起,InnoDB 有两大类索引: 聚集索引(clustered index) 普通索引 (secondary index...InnoDB 聚集索引 的叶子节点存储行记录,因此,InnoDB 必须要有,且只有一个聚集索引: 如果表定义了主键,则主键就是聚集索引; 如果表没有定义主键,则第一个 not null 的 unique 列是聚集索引...二、什么是回表查询?...通俗的讲就是,如果索引的列在 select 所需获得的列中(因为在 mysql 中索引是根据索引列的值进行排序的,所以索引节点中存在该列中的部分值)或者根据一次索引查询就能获得记录就不需要回表,如果 select...这个是可以的,上面所说的分两步查找,第一步根据username查找是肯定不能少的,那我们只要把password和索引username放到一起就可以了。

    2.4K10

    Oracle和MySQL数据库中做线性回归

    什么是线性回归 线性回归是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法,运用十分广泛。其表达形式为y = w’x+e,e为误差服从均值为0的正态分布。...那么如果结合数据库来做怎么办? 既然通过模拟数据可以做出这个结果,那么我第一感觉就是如果在数据库实现。...我就设计表的时候,让这个表的一列是广告投入,另外一个列是销售额(已经有的历史数据)所以表的设计是很重要的。...所谓智能化的基础是信息化 如果连基本的数据都不对,想做好AI是不可能的。 可惜MySQL社区版没有自身的模型,以上都是用python去演示的,但是Oracle有。...上图还是Oracle23AI的,最新的26AI,我没有。但是我相信这些只会是越做越好。 带给我们的思考就是,怎么控制好数据库对象设计以及数据质量。 墨力计划

    12210

    什么是数据库?MySQL 教程

    MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一...在本教程中,会让大家快速掌握 MySQL 的基本知识,并轻松使用 MySQL 数据库。 ---- 什么是数据库? 数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。...4.许多的行和列组成一张表单 5.若干的表单组成database ---- RDBMS 术语 在我们开始学习MySQL 数据库前,让我们先了解下RDBMS的一些术语: 数据库: 数据库是一些关联表的集合...---- MySQL数据库 MySQL 是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司。...MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。 MySQL 是开源的,目前隶属于 Oracle 旗下产品。

    3.7K20

    Oracle和MySQL数据库中做线性回归

    什么是线性回归线性回归是利用数理统计中回归分析,来确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法,运用十分广泛。其表达形式为y = w’x+e,e为误差服从均值为0的正态分布。...那么如果结合数据库来做怎么办?既然通过模拟数据可以做出这个结果,那么我第一感觉就是如果在数据库实现。...我就设计表的时候,让这个表的一列是广告投入,另外一个列是销售额(已经有的历史数据)所以表的设计是很重要的。...所谓智能化的基础是信息化如果连基本的数据都不对,想做好AI是不可能的。可惜MySQL社区版没有自身的模型,以上都是用python去演示的,但是Oracle有。...上图还是Oracle23AI的,最新的26AI,我没有。但是我相信这些只会是越做越好。带给我们的思考就是,怎么控制好数据库对象设计以及数据质量。

    24910
    领券