简答题 1.  什么是静默建库?
【正确答案】采用DBCA(DataBase Configuration Assistant,数据库配置助手)的silent模式可以快速创建一个数据库。silent模式采用命令行方式一次将所有信息提供给DBCA完成数据库的建立,在建立过程中不存在交互的情况,所有的信息、错误和告警都写到日志文件中,只在结束时屏幕上打印出日志文件的位置。
   Oracle 11g静默建库脚本如下:
   
   其中,每个参数的含义如下:
   1)gdbname:全局数据库名。
   2)sid:数据库SID,sid和gdbname保持一致。
   3)sysPassword:数据库sys密码。
   4)systemPassword:数据库system密码。
   5)sysmanPassword:数据库sysman密码。
   6)datafileDestination:数据库数据文件的位置,若是磁盘组则写磁盘组名,例如:'DATA/',若是文件系统就写具体路径,例如:'/u01/app/oracle',需要注意的是,由于数据文件路径会自动加上数据库名,所以,这里不用加数据库名。
   7)recoveryAreaDestination:闪回恢复区的位置,该值一般和datafileDestination保持一致。
   8)redoLogFileSize:数据库Redo文件的大小。
   9)emConfiguration:数据库管理方式,是本地管理还是使用Grid Control进行管理,一般设置为NONE。
   10)storageType存储方式,若是磁盘组则为ASM,若是文件系统则为FS,当取值为FS的时候,应该去掉asmsnmpPassword和diskGroupName参数。
   11)diskGroupName:存放数据库文件的磁盘组名称,注意此处不加“+”。
   12)nodeinfo:安装数据库的节点信息,若是RAC库则必须使用该参数,该参数的值为主机名列表,中间用逗号隔开。
   13)characterset:数据库字符集,一般为AL32UTF8或ZHS16GBK。
   14)nationalCharacterSet:国家字符集,一般为AL16UTF16。
   15)automaticMemoryManagement:是否开启AMM(Automatic Memory Management,自动管理内存),Oracle 11g可以选择true;Oracle 10g需要删除该参数。
   16)totalMemory: Oracle 11g代表数据库占用内存大小,单位为MB,例如2048代表2GB;Oracle 10g用memoryPercentage参数,代表数据库占用OS内存大小的百分比。
   17)sampleSchema:是否安装用于学习实验的示例数据,测试库选择true,生产库选择false。
   在以上命令中需要注意的是,每个正斜杠“\”的后面不能有空格,否则不能执行。当然,也可以去掉该斜杠,让所有参数保持在一行上。
   在静默建库时产生的日志文件路径:
   1)Oracle 11g:$ORACLE_BASE/cfgtoollogs/dbca。
   2)Oracle 10g:$ORACLE_HOME/cfgtoollogs/dbca。
   静默建库创建的数据库默认为非归档模式,所以,需要修改文件:$ORACLE HOME/assistants/dbca/templates/General_Purpose.dbc,将该文件里边的参数“<archiveLogMode>false</archiveLogMode>”修改为“<archiveLogMode>true</archiveLogMode>”即可。这样,以后每次静默创建的数据库都是归档模式了。
   静默建库常见的错误处理办法见下表。
   
静默建库常见的错误处理办法
   
【答案解析】