暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

《循序渐进Oracle》第一章连载-之三

原创 eygle 2007-08-03
621
1.2 数据库创建的脚本
在DBCA的最后一个步骤,我们保存生成了创建数据库的脚本,通过手工执行这些脚本,可以在命令行完成数据库的创建工作,这可以使我们摆脱图形界面的困扰,特别是在一些不易于运行图形界面的环境。此外,很多时候通过DBCA创建数据库可能会遇到一些错误,这些错误在图形界面下可能不易判断,但是通过命令行则要容易定位得多。
1.2.1 数据库创建脚本
现在通过数据库的创建脚本来深入地了解一下数据库的创建过程。按照上面的路径找到生成的数据库创建脚本。
C:\\Oracle\\admin\\eygle\\scripts>dir
驱动器 C 中的卷是 SYSTEM
卷的序列号是 8C88-D1B4
C:\\Oracle\\admin\\eygle\\scripts 的目录
2007-01-05 15:32 .
2007-01-05 15:32 ..
2007-01-05 15:32 1,139 CreateDB.sql
2007-01-05 15:32 600 CreateDBCatalog.sql
2007-01-05 15:32 326 CreateDBFiles.sql
2007-01-05 15:32 253 emRepository.sql
2007-01-05 15:32 614 eygle.bat
2007-01-05 15:32 698 eygle.sql
2007-01-05 15:32 2,408 init.ora
2007-01-05 15:33 1,108 postDBCreation.sql

在Linux/UNIX环境下,同样存在这样一系列的脚本(以下内容来自Linux上Oracle 9204安装脚本):
[oracle@jumper scripts]$ pwd
/opt/oracle/admin/eygle/scripts
[oracle@jumper scripts]$ ll
total 24
-rw-r--r-- 1 oracle dba 713 Apr 24 2006 CreateDBCatalog.sql
-rw-r--r-- 1 oracle dba 338 Apr 24 2006 CreateDBFiles.sql
-rw-r--r-- 1 oracle dba 769 Apr 24 2006 CreateDB.sql
-rwxr-xr-x 1 oracle dba 628 Aug 18 2006 eygle.sh
-rw-r--r-- 1 oracle dba 2764 Apr 24 2006 init.ora
-rw-r--r-- 1 oracle dba 442 Apr 24 2006 postDBCreation.sql

1.2.2 创建的起点
如果通过手工执行脚本来创建数据库,需要执行的脚本为eygle.bat(在Linux/UNIX下是eygle.sh脚本),来看一下这个脚本的内容:
C:\\Oracle\\admin\\eygle\\scripts>type eygle.bat
mkdir C:\\oracle\\10.2.0\\cfgtoollogs\\dbca\\eygle
mkdir C:\\oracle\\10.2.0\\database
mkdir C:\\oracle\\admin\\eygle\\adump
mkdir C:\\oracle\\admin\\eygle\\bdump
mkdir C:\\oracle\\admin\\eygle\\cdump
mkdir C:\\oracle\\admin\\eygle\\dpdump
mkdir C:\\oracle\\admin\\eygle\\pfile
mkdir C:\\oracle\\admin\\eygle\\udump
mkdir C:\\oracle\\flash_recovery_area
mkdir C:\\oracle\\oradata
set ORACLE_SID=eygle
C:\\oracle\\10.2.0\\bin\\oradim.exe -new -sid EYGLE -startmode manual -spfile
C:\\oracle\\10.2.0\\bin\\oradim.exe -edit -sid EYGLE -startmode auto -srvcstart system
C:\\oracle\\10.2.0\\bin\\sqlplus /nolog @C:\\oracle\\admin\\eygle\\scripts\\eygle.sql

这就是Oracle创建数据库的过程:
(1) 建立一系列的目录;
注意,这里建立的bdump目录是Oracle重要的警告日志的存放地点,其缺省名称为alert_.log,我们应该定期检查该文件以发现数据库的故障或错误信息。
第二个需要格外注意的是cfgtoollogs\\dbca\\eygle目录,在创建数据库时,主要的日志文件或输出信息会记录在该目录中,通过检查这些文件可以用来诊断创建过程中出现的一些错误。
(2) 设置ORACLE_SID环境变量;
(3) 通过oradim创建并配置实例;
(4) 通过sqlplus运行脚本开始创建数据库。
1.2.3 ORADIM工具的使用
ORADIM工具是Oracle在Windows上的一个命令行工具,用于手工进行Oracle服务的创建、修改、删除等工作。ORADIM的使用很简单,通过帮助文件可以看到常用的命令示例,此处不再赘述。
ORADIM在数据库恢复中也常被用到,很多朋友都问过这样的问题:在Windows上,如果系统崩溃了,可能数据库软件丢掉了,但是数据文件、控制文件、日志文件等都还在,该怎样来恢复Oracle数据库?
其实过程很简单,通常只要按原来的目录结构重新安装Oracle软件,然后通过ORADIM工具重建服务,就可以启动实例、加载数据库(当然相关的参数文件和口令文件等需要在$ORACLE_HOME\\database目录存在)。
来看以下过程,通过ORADIM创建一个服务后,实例会随之启动:
C:\\>oradim -new -sid eygle
实例已创建。

用net命令可以查看系统启动了哪些服务,看到Oracle的服务已经启动:
C:\\>net start
已经启动以下 Windows 服务:
...............
OracleServiceeygle
Plug and Play
Print Spooler
命令成功完成。

如果你的系统装了一些UNIX增强工具,那么可以通过grep过滤一下:
C:\\>net start |grep Oracle
OracleServiceeygle

使用ORADIM工具后,会在$ORACLE_HOME\\database目录下生成一个日志文件。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论