oracle和mysql的区别

 我来答
APEUT
高粉答主

2021-09-22 · 说的都是干货,快来关注
知道小有建树答主
回答量:1051
采纳率:100%
帮助的人:20.8万
展开全部

1、一致性

Oracle :Oracle 支持可序列化的隔离级别,可以达到最高级别的读一致性。每个会话提交后,其他会话可以看到提交的更改。 Oracle通过在undo表空间构造多版本数据块来实现读一致性,在每次会话查询期间,如果相应的数据块发生变化,Oracle 将在 undo 表空间中为会话构造旧的数据块。

mysql:MySQL没有类似于Oracle的多版本数据块构造机制,只支持读提交的隔离级别。当一个会话读取数据时,其他会话不能更改数据,但可以在表的末尾插入数据。会话更新数据时,必须加排他锁,其他会话无法访问数据。

2、数据持久化

Oracle:确保提交的数据可以恢复,因为Oracle将提交的sql操作行写入在线联机日志文件中,并保存在磁盘上。如果数据库或主机出现异常重启,重启后oracle可以通过获取在线在线日志来恢复客户提交的数据。

mysql:sql语句是默认提交的,但是如果更新过程中出现db或者host重启的问题,可能会丢失数据。

3、并发

mysql:MySQL主要基于表级锁,资源锁的粒度非常大。如果某个会话锁定表的时间过长,其他会话将无法更新该表中的数据。虽然 InnoDB 引擎的表可以使用行级锁,但是这种行级锁的机制取决于表的索引。

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

4、逻辑备份

Oracle:逻辑备份不锁数据,备份的数据是一致的。

mysql:逻辑备份时数据必须加锁,保证备份的数据一致,影响业务正常使用dml。

ya...0@163.com
2017-04-15 · TA获得超过282个赞
知道小有建树答主
回答量:1063
采纳率:0%
帮助的人:382万
展开全部
oracle是收费的,MYSQL是开源的。都是数据库。功能上ORACLE属于商业化大型数据库,付费后能得到较好的服务。MYSQL可以不用付费,但要求支持还是需要付费的。功能上仁者见人,智者见智。个人认为oracle适合安全的,规模较大的需求。规模中等的,功能上要求不是非常复杂的,可以选择mysql.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
贾老师IT培训
2017-04-15 · TA获得超过352个赞
知道小有建树答主
回答量:460
采纳率:0%
帮助的人:143万
展开全部
mysql是中小型数据库 安装后所占资源比较少 有免费版 开放源代码
oracle是大型数据库
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
很神很奇很神奇
2017-04-15 · TA获得超过168个赞
知道小有建树答主
回答量:211
采纳率:80%
帮助的人:54.3万
展开全部
oracle 是企业用的
mysql是小公司用的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式