找回密码
 FreeOZ用户注册
12
返回列表 发新帖回复
楼主: xblues

[数据库] Oracle学习笔记

[复制链接]
发表于 24-1-2011 20:45:06 | 显示全部楼层
大体上oracle的schema对应MS SQL的数据库;虫子的理解不错,oracle的database可以理解为物理存储的一组数据文件,实例是内存结构和相关进程,sid和database name在ORACLE RAC中是一对多的关系。
回复  

使用道具 举报

 楼主| 发表于 25-1-2011 10:09:45 | 显示全部楼层

说说Oracle 和SQL的区别

物理服务器 --> SID 实例 --> database 数据库 --> schema --> table 表

Oracle:一台服务器下面可以安装多个实例,一个实例下面只能有一个数据库
SQL:一台服务器下面可以安装多个实例,一个实例下面可以有多个数据库

Oracle:用户是一个特殊的schema,建立了一个用户就缺省建立了一个和用户名相同的schema,用户缺省情况下可以访问和自己同名的schema,可以通过设置赋予该用户访问和修改其他shema的权限。
SQL:用户和schema是分开的两个概念,建立用户不会自动建立同名的schema,其他的就都一样了。

Oracle:集群是在SID实例层上实现的,在不同的物理服务器上安装相同名字的实例,通过设置数据库文件和表空间,可以让一个巨大的表跨服务器分布,所以Oracle是大型数据库。
SQL:集群式在操作系统层面上实现的,操作系统集群,实现了数据库以及微软的其他的服务(sharepoint, iis, etc.)的集群。这一点上也反映了微软和Oracle在战屡上的不同,微软的产品不仅仅是数据库,所以对于微软来说集群是一个普遍的概念。Oracle一开始是专门做数据库的,所以集群功能集成在了数据库里面。

Oracle:数据库文件分为两种,数据库文件和索引文件
SQL:也是两种,数据库和Log文件,所以在SQL中索引文件包含在数据库文件中了。所以在SQL中存在压缩数据库,整理数据库空间的说法。在表空间的控制上,我觉得Oracle做得更好,可以实现很细度的控制,对于那些大型数据库,上G条数据的超级表来说,Oracle的控制选项更多。SQL则把这些细节都隐藏起来了,所以从表面上看,SQL简单健壮,而Oracle则见长于很多细节调整,用起来选项也多,复杂。

评分

参与人数 1威望 +30 收起 理由
熊猫阿三 + 30 谢谢分享!

查看全部评分

回复  

使用道具 举报

发表于 25-1-2011 11:44:42 | 显示全部楼层
我有一本书,把Oracle 11g和SQL 2008放在一起对比,两样一起学

评分

参与人数 1威望 +50 收起 理由
xblues + 50 上学习笔记阿!

查看全部评分

回复  

使用道具 举报

发表于 25-1-2011 12:19:28 | 显示全部楼层
回复  

使用道具 举报

发表于 30-1-2011 19:54:29 | 显示全部楼层
Oracle:数据库文件分为两种,数据库文件和索引文件
这个理解恐怕有些问题,因为数据库文件不是按照这两种模式分类的,大类来说,和MS sql类似,也是数据库文件和日志文件,细分起来,数据库文件包括:参数文件(pfile和spfile)、控制文件、监听和TNS文件、监控相关文件、密码文件、闪存文件(10g及以上版本)、数据文件(就是dbf文件)等;日志文件可以分为在线日志和归档日志(如果开启了归档设置)。

评分

参与人数 1威望 +50 收起 理由
xblues + 50 谢谢分享!

查看全部评分

回复  

使用道具 举报

您需要登录后才可以回帖 登录 | FreeOZ用户注册

本版积分规则

小黑屋|手机版|Archiver|FreeOZ论坛

GMT+11, 29-3-2024 10:12 , Processed in 0.027007 second(s), 20 queries , Gzip On, Redis On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表