关系型数据库——oracle和mysql的区别

oracle:

我们可以创建多个数据库,每一个数据库在oracle里称为一个实例。这个实例有个唯一的名称叫sid。

在实际项目中,一台服务器一般只有一个实例,多实例需要进行数据库的集群配置,需要oracle公司的专业人员完成。

一个表空间相当于mysql的一个数据库的概念,oracle是分配表空间,而mysql是新建数据库。

mysql是在数据库里建表插入数据,oracle是在表空间里建表插入数据,

oracle的用户是在实例下建立的。不同实例中可以建相同名字的用户。

oracle是由用户和表空间对数据进行管理和存放的,但是表不是由表空间去查询的,而是由用户去查的。

 

oracle:

大型数据库,支持大并发,大访问量(行锁)

市场占有率40%

价格高

安装后3G,占用很大内存空间

 

没有自动增长类型

rownum,只能用rownum<100,不能用rownum>80

在linux不是多进程,在windows下是单进程

group by 必须在select后面

select t.username from test as t;不能加as

完全支持事务

 

mysql:

中小型数据库,表锁

市场占有率20%

开源=免费

安装后152M

自动增长,指定表主键auto increment,不需要指定记录的主键

分页使用limit,例:limit 9,4(查询第9条数据之后的4条数据,从10-13条)

单进程多线程

group by 不在select后面没有影响

select t.username from test as t;可以加as

只有在innod存储引擎的行级锁的情况下才支持事务

你可能感兴趣的:(数据库)