/*******************************************************************************************/
>学习oracle必须掌握的基础概念
/*******************************************************************************************/
>0.oracle基本概念
/*******************************************************************************************/
0.1>数据库
首先oracle这个名字有很多种含义,一代表oracle公司
二代表oracle数据库管理系统的名字,三代表oracle数据库
,我说的是第三中是oracle数据库用于存储数据的数据库
,oracle数据库是磁盘存上储的数据的集合,在物理上表现为数据文件,
日志文件,和控制文件等,在逻辑上以表空间形式存在.
0.2>什么是oracle数据库实例(用于访问数据库文件的进程的集合)
这个要相对于oracle数据库管理系统来说,因为
这个系统下可以有很多个数据库,每个启动的数据库都对应一个数据库实例
,然后由这个实例来访问和控制数据库,数据库实例也称服务器,是用来访问数据库文件集的
存储结构及后台进程的集合,如果把数据库简单理解为硬盘上的文件,具有永久性,数据库实例
就是在内存中处于运行状态的数据库,是临时的.
0.3>什么是数据文件
数据文件的扩展名是.DBF,是用于存储数据库数据的文件,例如存储数据库表中的记录
,索引,存储过程,视图,存储过程,数据字典定义等。对于数据库操作中产生的一些临时数据
,以及为保证事物重做所必需的数据也有专门的数据文件负责存储。
一个数据文件中可能存储很多个数据表的数据,而一个数据库表的数据也可能存放在多个数据文件中
,即数据库表和数据文件不存在一对一的关系。
0.4>什么是控制文件
控制文件的扩展名为.CTL,是一个二进制文件。控制文件中存储的信息很多.其中包括数据文件和日志文件的名字和位置
,控制文件是数据库启动以及运行时所必须的文件.oracle读写数据的时候,要根据控制文件的信息查找数据文件,
因于控制文件的重要性,因此一个数据库至少要有一个以上的控制文件,oracle10默认包含三个控制文件,各个控制文件的内容相同
,可以避免因为一个控制文件的损坏而导致无法启动数据库.
0.5>日志文件
日志文件的扩展名为.LOG,他记录了对数据的所有更改信息,并提供了一种数据恢复机制,
确保在系统崩溃或在其他意外出现后重新恢复数据库.
在oracle数据库中,日志文件是成组使用的,每个日志文件组可以有一个或多个日志文件。在工作过程中,多个
日志文件组之间循环使用,当一个日志文件组写满后,会转向下一个日志文件.
0.6>什么是表空间
每个oracle数据库都是由多个表空间构成,用户在数据库中建立的所有内容都被存储到表空间中,
,一个表空间可以有多个数据文件,但是一个数据文件只能属于一个表空间。与数据文件这种物理结构相比,
表空间是属于数据库的逻辑结构.
在每一个数据库中,都有一个名为system的表空间,即系统空间,还会有sysAus,temp,undo,users等表空间
,这些都是在创建数据库的时候自动创建,管理员可以创建自定义的表空间并分配给指定用户,也可以为表空间
删除和添加数据文件.
0.7>创建数据库和用户
创建数据库可以在安装oracle的管理软件的时候创建,也可以在安装完后
使用sql定制自己的数据库,也可以通过dbca(database configuration assistant数据库配置助手来创建)
,同一个数据库中可以同时有多个用户,多个用户管理自己的数据库对象,如数据库表,索引,视图,等。
由谁来创建用户呢?每个数据库都有sys和system两个默认用户,两者都具有创建用户的权限,可以通过他们来登录
,然后创建自己想要的用户,创建用户的命令为create user
最好为每个用户创建自己的表空间,实现每个用户的数据的分开存放,创建表空间的命令是create tablespace。
通过create user命令来创建用户,但仅仅创建用户还不行,还需要赋予他相应的权限,例如连接数据库的权限,
创建表,插入数据等,才可以进行相应的操作,这需要用到grant命令。
/*******************************************************************************************/
1.>对应服务作用
/*******************************************************************************************/
>OracleServic<SID> -->为数据库实例服务 必须启动
>OracleOraDb10g_home1TNSListener -->为oracle数据库服务的监听服务 必须启动
>OracleDBConsole<SID> -->使用oracle的企业管理器
>OracleOraD10G_home1iSQL*PLUS -->使用oracle的sqlPlus管理工具
/*******************************************************************************************/
2.>系统用户介绍
/*******************************************************************************************/
sys用户是oracle中的一个超级用户,数据库中的所有数据字典和视图都存储在sys模式中.
数据字典存储了用来管理数据库对象的所有信息,是oracle数据库中非常重要的系统信息.
sys用户主要用来维护系统信息和管理实例.在oracle10g版本中,sys用户只能以sysDBA或
sysOPER角色登录系统.
system用户是oracle中默认的系统管理员,他拥有DBA权限,该用户拥有oracle管理工具使用的内部表和视图,通常
通过system用户管理oracle数据库的用户,权限和存储等.不建议在system模式中创建用户表,在oracle10g版本中,system
用户不能以sysOPER火sysDBA角色登录系统,只能以Normal方式登录.
sys和system用户都是oracle的系统用户,他们都是用system表空间存储模式对象,sys拥有更大的权限.
/*******************************************************************************************/
>3.权限和角色基本概念
/********************************************************************************/
权限是指执行特定类型的SQL命令或访问其他对象的权利.
例如连接数据库,创建表,执行存储过程都需要一些权限,
如果没有任何权限,新创建的用户将无法登录连接到数据库。
>用户权限种类:
系统权限
系统权限指允许执行某些数据库操作,如:创建表空间
对象权限
对象权限允许用户对某一特定对象(如:表,视图,序列)执行特定的操作
>角色:具有名称的一组权限的组合,可以使用角色为用户授权
>常用角色
connect:临时用户,特别是那些不需要创建表的用户,赋予该角色
resource:可以创建表,触发器,过程等
dba:数据库管理员角色,拥有管理数据库的最高权限.一个具有dba角色的用户
可以撤销任何别的用户的甚至dba的权限.
/********************************************************************************/
3.>连接oracle的方式种类
/*******************************************************************************************/
>通过SQL*PLUS方式连接(C/S模式)
采用的是cs模式这里需要填写一个主机字符窜
意思为:创建数据库时指定的数据库实例SID
>B/S模式连接
http://host_name:port/isqlplus -->请求url连接
/*******************************************************************************************/
>4.oracle安装方面问题
/*******************************************************************************************/
win7安装oracle企业版可能有不兼容的问题,解决这个问题的办法是只需要
到oracle的安装文件目录下搜索refhost.xml然后在相应的xml节点中添加上这个
子节点就可以了,在安装后还有个问题就是oracle的net configuration assistant这个配置oracle监听服务器的程序有问题
这只是在win7上,在xp上是没有的。
<OPERATING_SYSTEM>
<VERSION VALUE="6.1"/>
</OPERATING_SYSTEM>
/*******************************************************************************************/
学习oracle必须清楚的概念
最新推荐文章于 2024-09-22 16:13:05 发布