mysql、oracle、sqlserver的区别

一、保存数据的持久性:

        MySQL:是在数据库更新或者重启,则会丢失数据。        

        Oracle:把提交的sql操作线写入了在线联机日志文件中,保持到了磁盘上,可以随时恢复。        
        SqlServer:2014之后,也拥有了完全持久和延迟持久特性。

二、提交方式:

          MySQL:默认是自动提交(变量autocommit为ON)。        

          Oracle:默认不自动提交,需要用户手动提交(commit)。        

          SqlServer:默认是自动提交,用户可手动停止(KILL)。

三、对事务的支持:

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

        Oracle:完全支持事务。        

        SqlServer:在非自动提交时才可支持事务。

      

 四、对并发性的支持: 

        MySQL:以表级锁(行级锁依赖于表索引)为主,如果一个session的加锁时间过长,会让其他session无法更新此表中的数据,即“悲观并发控制”。
        Oracle:使用行级锁,对资源锁定的粒度要小很多,并且不依赖索引,对并发性的支持要好很多,即“乐观并发控制”。
        SqlServer:在表、表的分页、索引键以及单独的数据行上支配共享锁排它锁、以及更新锁,简单地说:读取时用共享锁,修改时用排它锁,更新锁则是共享锁和排他锁的一种混合

五、复制备份:

        MySQL:复制服务器配置简单,但主库出问题时,从库有丢失一定数据的可能。
        Oracle:既有推或拉式的传统数据复制,也有dataguard双机或多机容灾机制,还有成熟的热备工具rman,主库出现问题时,可以自动切换备库到主库,但配置管理较复杂。
        SqlServer:仅复制备份是独立于常规SQL Server备份序列的SQL Server备份。通常进行备份会更改数据库并影响其后备份的还原方式。仅用于在不影响数据库总体备份和还原过程的情况下,为特殊目的而进行的备份。

六、逻辑备份:

        MySQL:逻辑备份时要锁定数据,才能保证备份的数据是一致的,会影响正常业务。
        Oracle:逻辑备份时不锁定数据,且备份的数据是一致。
        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值