与oracle相比,mysql有什么优势_sql数据库和oracle数据库

与oracle相比,mysql有什么优势_sql数据库和oracle数据库Oracle与MySQl对比,并发性并发性是oltp数据库最重要的特性,但并发涉及到资源的获取、共享与锁定。mysql:以表级锁为主,对资源锁定的粒度很大,如果一个session对一个表加锁时间过长,会让其他session无法更新此表中的数据。虽然InnoDB引擎的表可以用行级锁,但这个行级锁的机制依赖于表的索引,如果表没有索引,或者sql语句没有使用索引,那么仍然使用表级锁。oracle:使用行…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Oracle与MySQl对比,

并发性

并发性是oltp数据库最重要的特性,但并发涉及到资源的获取、共享与锁定。

mysql:以表级锁为主,对资源锁定的粒度很大,如果一个session对一个表加锁时间过长,会让其他session无法更新此表中的数据。

虽然InnoDB引擎的表可以用行级锁,但这个行级锁的机制依赖于表的索引,如果表没有索引,或者sql语句没有使用索引,那么仍然使用表级锁。

oracle:使用行级锁,对资源锁定的粒度要小很多,只是锁定sql需要的资源,并且加锁是在数据库中的数据行上,不依赖与索引。所以oracle对并发性的支持要好很多。

一致性

oracle:支持serializable的隔离级别,可以实现最高级别的读一致性。每个session提交后其他session才能看到提交的更改。oracle通过在undo表空间中构造多版本数据块来实现读一致性,每个session查询时,如果对应的数据块发生变化,oracle会在undo表空间中为这个session构造它查询时的旧的数据块。

mysql:没有类似oracle的构造多版本数据块的机制,只支持read commited的隔离级别。一个session读取数据时,其他session不能更改数据,但可以在表最后插入数据。

session更新数据时,要加上排它锁,其他session无法访问数据。

事务

oracle:很早就完全支持事务。

mysql:在innodb存储引擎的行级锁的情况下才支持事务。

数据持久性

oracle:保证提交的数据均可恢复,因为oracle把提交的sql操作线写入了在线联机日志文件中,保持到了磁盘上,如果出现数据库或主机异常重启,重启后oracle可以考联机在线日志恢复客户提交的数据。

mysql:默认提交sql语句,但如果更新过程中出现db或主机重启的问题,也许会丢失数据。

提交方式

oracle:默认不自动提交,需要用户手动提交。

mysql:默认是自动提交。

逻辑备份

oracle:逻辑备份时不锁定数据,且备份的数据是一致的。

mysql:逻辑备份时要锁定数据,才能保证备份的数据是一致的,影响业务正常的dml使用。

热备份

oracle:有成熟的热备工具rman,热备时,不影响用户使用数据库。即使备份的数据库不一致,也可以在恢复时通过归档日志和联机重做日志进行一致的回复。

mysql:

myisam的引擎,用mysql自带的mysqlhostcopy热备时,需要给表加读锁,影响dml操作。

innodb的引擎,它会备份innodb的表和索引,但是不会备份.frm文件。用ibbackup备份时,会有一个日志文件记录备份期间的数据变化,因此可以不用锁表,不影响其他用户使用数据库。但此工具是收费的。

innobackup是结合ibbackup使用的一个脚本,他会协助对.frm文件的备份。

sql语句的扩展和灵活性

mysql:对sql语句有很多非常实用而方便的扩展,比如limit功能,insert可以一次插入多行数据,select某些管理数据可以不加from。

oracle:在这方面感觉更加稳重传统一些。

复制

oracle:既有推或拉式的传统数据复制,也有dataguard的双机或多机容灾机制,主库出现问题是,可以自动切换备库到主库,但配置管理较复杂。

mysql:复制服务器配置简单,但主库出问题时,丛库有可能丢失一定的数据。且需要手工切换丛库到主库。

性能诊断

oracle:有各种成熟的性能诊断调优工具,能实现很多自动分析、诊断功能。比如awr、addm、sqltrace、tkproof等

mysql:的诊断调优方法较少,主要有慢查询日志。

权限与安全

mysql:的用户与主机有关,感觉没有什么意义,另外更容易被仿冒主机及ip有可乘之机。

oracle:的权限与安全概念比较传统,中规中矩。

分区表和分区索引

oracle:的分区表和分区索引功能很成熟,可以提高用户访问db的体验。

mysql:的分区表还不太成熟稳定。

语法区别:

http://www.htsjk.com/teradata/33824.html

www.htsjk.Com

true

http://www.htsjk.com/teradata/33824.html

NewsArticle

Oracle与MySQl对比, 并发性 并发性是oltp数据库最重要的特性,但并发涉及到资源的获取、共享与锁定。 mysql:以表级锁为主,对资源锁定的粒度很大,如果一个session对一个表加锁时间过…

本站文章为和通数据库网友分享或者投稿,欢迎任何形式的转载,但请务必注明出处.

同时文章内容如有侵犯了您的权益,请联系QQ:970679559,我们会在尽快处理。

相关文章

暂无相关文章

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193997.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • C语言判断回文字符串(指针)

    C语言判断回文字符串(指针)东北大学在线编程社区problem1678题目描述:编写函数:intfun(char*p),功能是判断一个字符串是否是回文字符串(提示:回文字符串是指正读和反读都一样的字符串),要求从主函数中由键盘输入字符串,调用函数fun后,根据函数fun的返回值,主函数输出是否为回文字符串的判断。输入样例:haah输出样例:是回文串//该代码使用MicrosoftVisualStudio2019编写#define_CRT_SECURE_NO_WARNINGS#include<stdio.

    2022年5月4日
    50
  • 跨数据库同步方案汇总怎么做_国内外数据库同步方案

    跨数据库同步方案汇总怎么做_国内外数据库同步方案Datax一般比较适合于全量数据同步,对全量数据同步效率很高(任务可以拆分,并发同步,所以效率高),对于增量数据同步支持的不太好(可以依靠时间戳+定时调度来实现,但是不能做到实时,延迟较大)。Canal、databus等由于是通过日志抓取的方式进行同步,所以对增量同步支持的比较好。OGG太贵一、早期关系型数据库之间的数据同步二、大数据时代下的数据同步三、总结一、早期关系型数据库之间的数据同步1)、全量同步比如从oracle数据库中同步一张表的数据到My

    2022年10月10日
    2
  • 儿童计算机编程课是学什么(大学计算机课程)

    当今世界已经处于数字、网络和信息的计算机时代,而计算机编程是时代发展的关键因素,学习计算机学科的编程能培养一个人的创造力,使学习者具有批判性思维技能,同时使其成为主动学习者,为此,在少儿阶段接触和学习计算机编程知识,能使我们在今后的学习和生活中,更好的理解我们所处的时代,有能力改造我们的时代,并因此而终生受益。我们专门针对少儿学习者,开设了六门计算机科学基础课程,以方便少儿计算机编程学习者能灵活、…

    2022年4月17日
    84
  • all in all是什么意思啊_22449.1000安装失败

    all in all是什么意思啊_22449.1000安装失败apache 无法启动 (98)Address already in use: AH00072 make_sock: could not bind to address 0.0.0.0:80…

    2022年4月20日
    51
  • CentOS5.3+Nginx0.7.57+Postfix+Extmail邮件系统安装配置(一))

    CentOS5.3+Nginx0.7.57+Postfix+Extmail邮件系统安装配置(一))

    2021年7月31日
    74
  • 源码网_论文管理系统源码

    源码网_论文管理系统源码1.LaTeX源码%-*-coding:UTF-8-*-\documentclass[UTF8]{ctexart}\usepackage{multicol}%数学包,这里没用到%\usepackage{amsmath}\usepackage{indentfirst}%添加作者信息\usepackage{authblk}\usepackage{graphicx}%设置…

    2025年7月11日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号