在Oracle中,什么是静默建库?
♣ 答案
采用DBCA(DataBase Configuration Assistant,数据库配置助手)的silent模式可以快速创建一个数据库。silent模式采用命令行方式一次将所有信息提供给DBCA完成数据库的建立,在建立过程中不存在交互的情况,所有的信息、错误和告警都写到日志文件中,只在结束时屏幕上打印出日志文件的位置。
Oracle 11g静默建库脚本如下所示:
1dbca -silent -createDatabase -templateName General_Purpose.dbc -responseFile NO_VALUE \
2-gdbname mydb -sid mydb \
3-sysPassword oracle -systemPassword oracle \
4-datafileDestination 'DATA/' -recoveryAreaDestination 'FRA/' \
5-redoLogFileSize 50 \
6-storageType ASM -asmsnmpPassword oracle -diskGroupName 'DATA' \
7-characterset AL32UTF8 -nationalCharacterSet AL16UTF16 \
8-sampleSchema true \
9-automaticMemoryManagement true -totalMemory 2048 \
10-databaseType OLTP \
11-emConfiguration NONE \
12-nodeinfo NODE1,NODE2
其中,每个参数的含义如下所示:
l gdbname:全局数据库名
l sid:数据库SID,sid和gdbname保持一致
l sysPassword:数据库sys密码
l systemPassword:数据库system密码
l sysmanPassword:数据库sysman密码
l datafileDestination:数据库数据文件的位置,若是磁盘组则写磁盘组名,例如:'DATA/',若是文件系统就写具体路径,例如:'/u01/app/oracle',需要注意的是,由于数据文件路径会自动加上数据库名,所以,这里不用加数据库名
l recoveryAreaDestination:闪回恢复区的位置,该值一般和datafileDestination保持一致
l redoLogFileSize:数据库Redo文件的大小
l emConfiguration:数据库管理方式,是本地管理还是使用Grid Control进行管理,一般设置为NONE
l storageType 存储方式,若是磁盘组则为ASM,若是文件系统则为FS,当取值为FS的时候,应该去掉asmsnmpPassword和diskGroupName参数
l diskGroupName:存放数据库文件的磁盘组名称,注意此处不加“+”
l nodeinfo:安装数据库的节点信息,若是RAC库则必须使用该参数,该参数的值为主机名列表,中间用逗号隔开
l characterset:数据库字符集,一般为AL32UTF8或ZHS16GBK
l nationalCharacterSet:国家字符集,一般为AL16UTF16
l automaticMemoryManagement:是否开启AMM(Automatic Memory Management,自动管理内存),Oracle 11g可以选择true;Oracle 10g需要删除该参数
l totalMemory:Oracle 11g代表数据库占用内存大小,单位为MB,例如2048代表2GB;Oracle 10g用memoryPercentage参数,代表数据库占用OS内存大小的百分比
l sampleSchema:是否安装用于学习实验的示例数据,测试库选择true,生产库选择false
在以上命令中需要注意的是,每个正斜杠“\”的后面不能有空格,否则不能执行。当然,也可以去掉该斜杠,让所有参数保持在一行上。
在静默建库时产生的日志文件路径:
l Oracle 11g:$ORACLE_BASE/cfgtoollogs/dbca
l Oracle 10g:$ORACLE_HOME/cfgtoollogs/dbca
静默建库创建的数据库默认为非归档模式,所以,需要修改文件:$ORACLE_HOME/assistants/dbca/templates/General_Purpose.dbc,将该文件里边的参数“<archiveLogMode>false</archiveLogMode>”修改为“<archiveLogMode>true</archiveLogMode>”即可。这样,以后每次静默创建的数据库都是归档模式了。
静默建库常见的错误处理办法如下表所示:
& 说明:
有关静默建库的更多内容可以参考我的BLOG:http://blog.itpub.net/26736162/viewspace-2057286/,http://blog.itpub.net/26736162/viewspace-2057270/,http://blog.itpub.net/26736162/viewspace-1589769/,http://blog.itpub.net/26736162/viewspace-1586352/,http://blog.itpub.net/26736162/viewspace-1585925/,http://blog.itpub.net/26736162/viewspace-1448220/,http://blog.itpub.net/26736162/viewspace-2121863/,http://blog.itpub.net/26736162/viewspace-2114484/
本文选自《Oracle程序员面试笔试宝典》,作者:小麦苗
DB宝分享的IT资料:https://mp.weixin.qq.com/s/Iwsy-zkzwgs8nYkcMz29ag
● 本文作者:小麦苗,只专注于数据库的技术,更注重技术的运用
● 作者博客地址:http://blog.itpub.net/26736162/abstract/1/
● 本系列题目来源于作者的学习笔记,部分整理自网络,若有侵权或不当之处还请谅解
● 版权所有,欢迎分享本文,转载请保留出处
● QQ:646634621 QQ群:230161599、618766405
● 微信:lhrbestxh
● 微信公众号:DB宝
● 提供Oracle OCP、OCM、高可用(rac+dg+ogg)和MySQL最实用的技能培训
● 题目解答若有不当之处,还望各位朋友批评指正,共同进步
长按下图识别二维码或微信扫描下图二维码来关注小麦苗的微信公众号:DB宝,学习最实用的数据库技术。
本文分享自微信公众号 - DB宝(lhrdba)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。