我们从后往前倒着来讲:
(1)oradata:打开这个文件夹,里面是一个以数据库名(而不是实例名)命名的文件夹,我们喜欢将其命名为“orcl”。把orcl打开,看到的文件就是Oracle数据库的大部分内容了,也是DBA需要管理的东西。这些文件可以分成三类:
- *.ctl:控制文件(至少一个,一般是三个)
- *.dbf:数据文件(分为系统数据文件和用户数据文件)
- *.log:在线重做日志文件(至少两个,默认安装是三个,Oracle9i 下为 100M 大小)
我们在后继课程中会详细讲述这些文件的特性和用处。
----------------------------------------------------------------------------------------------------
NOTE:如果想使用dbca安装第二个数据库orcl2,那么我们应该在oradata下建立文件夹“orcl2”,然后将orcl2的数据文件、控制文件、在线重做日志文件都放在文件夹“orcl2”下。这不是必须的,但这样去做,你以后会发现管理起来特别方便。
----------------------------------------------------------------------------------------------------
(2)admin:打开这个文件夹,我们同样会看到一个以数据库名命名的文件夹,也许就是orcl。我们再把它打开,会出现如下五个文件夹:
- bdump:后台进程(background process)dump文件。包括dbwr、lgwr、arch、pmon、qmn、smon等后台进程dump文件,以及警告日志文件:alter_<sid>.log。我们要记住的,就是警告日志文件!当数据库发生错误的时候,我们第一步要检查的就是这个文件。该文件记录了自数据库安装以来的所有结构变动记录,错误记录,以及日志切换和归档记录。
- cdump:核心(core)dump文件。当数据库出现内部错误的时候,会将部分错误信息记录在这个文件中。
- create:不详。
- pfile:不详(不过这个pfile不是数据库启动时调用的PFILE)。
- udump:用户(user)dump文件。比如,我使用命令: alter system dump datafile 11 block 257;将11号文件的257号数据块dump出来了,那么dump文件就自动放在了该目录下。
注意:我们必须记住的,是 bdump 下的警告日志文件,以及 udump 文件夹!
-----------------------------------------------------------------------------------------------------
NOTE:对于udump,可以再多了解一些:这些路径,是由参数控制的:
SQL> show parameter dump NAME TYPE VALUE |
而我们手工dump出来的文件,可以通过如下sql找到文件的位置:
select p.value||'\'||i.instance_name||'_ora_'||p.spid||'.trc' trace_path from v$process p, v$instance i, v$parameter p where p.addr = ( select paddr from v$session where sid = ( select sid from v$mystat where rownum = 1) ) and p.name='user_dump_dest'; |
-----------------------------------------------------------------------------------------------------
(3)ora92:只剩下这个文件夹了。可是我们打开后,会发现里面有很多的文件夹。而随便打开一个,里面会有更多的文件夹。很多内容我也不懂,所以放在最后介绍了,呵呵。
这里面有很多东西是属于 Oracle 软件的,我们只讲述与数据库有关的内容。
- admin:和(2)中的“admin”文件夹格局类似,是一个模板,用于手工创建数据库。
- bin:管理Oracle的命令。我们常用的 dbca、exp、imp、sqlplus、sqlplusw、tnsping、tnslsnr 等命令就放这里。这也是为什么我们必须在环境变量的“path”中,指定这个路径的原因。
- database:这里有三个重要的文件:密码文件、PFILE、SPFILE。密码文件的命名格式为“pwd<sid>.ora”,SPFILE的命名格式为“spfile<sid>.ora”,PFILE 的命名格式为“init<sid>.ora”。在 5.2 小节中我们会介绍一点 pfile 和spfile 的用处。至于密码文件,我们可以通过 Oracle 提供的操作系统级的命令“orapwd”来查看其用法。
- rdbms:存放了Oracle提供的数据库管理的很多脚本。可被 Oracle 某些功能自动调用,或由我们手工执行。
- network:网络配置文件。我们看里面的“admin”文件夹,有两个文件我们应该比较熟悉:tnsname.ora、listener.ora。不熟悉?那好,我们看看下面这个菜单:
我们安装上数据库后,会在这里配置服务名,来连接到服务器上开发程序。所配置的服务名信息,就保存到 tnsname.ora 文件中。我们也可以不使用上述菜单,而直接在 tnsname.ora 文件中配置服务名。
至于 listener.ora,是监听配置文件。在这个菜单所提供的界面中,也能看到。比如我的机器是 C,现在我要连接到服务器 S 上,那么我在 C 的 tnsname.ora 文件中配置连接到 S 的服务名“cs”;而 S 上的 listener.ora 文件中配置了相应的监听,并已经启动。那么当 C 用“cs”试图连接 S 时,S 的监听就捕捉到了该信息,并转发给相应的 Oracle 服务进程。