静默建库和删除数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了静默建库和删除数据库相关的知识,希望对你有一定的参考价值。

很多时候客户现场或测试环境不一定有xm等图形工具,新建库或删除库需要通过命令行进行

静默建库:

[email protected]>select * from v$version where rownum<2;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

[[email protected] pro]$ dbca -help
dbca  [-silent | -progressOnly | -customCreate] {<command> <options> }  | { [<command> [options] ] -responseFile  <response file > } [-continueOnNonFatalErrors <true | false>]
有关详细信息, 请参阅手册。
可以输入以下命令之一:

通过指定以下参数创建数据库:
        -createDatabase
                -templateName <默认位置或完整模板路径中现有模板的名称>
                [-cloneTemplate]
                -gdbName <全局数据库名>
                [-sid <数据库系统标识符>]
                [-sysPassword <SYS 用户口令>]
                [-systemPassword <SYSTEM 用户口令>]
                [-emConfiguration <CENTRAL|LOCAL|ALL|NONE>
                        -dbsnmpPassword <DBSNMP 用户口令>
                        -sysmanPassword <SYSMAN 用户口令>
                        [-hostUserName <EM 备份作业的主机用户名>
                         -hostUserPassword <EM 备份作业的主机用户口令>
                         -backupSchedule <使用 hh:mm 格式的每日备份计划>]
                        [-centralAgent <Enterprise Manager 中央代理主目录>]]
                [-disableSecurityConfiguration <ALL|AUDIT|PASSWORD_PROFILE|NONE>
                [-datafileDestination <所有数据库文件的目标目录> |  -datafileNames <含有诸如控制文件, 表空间, 重做日志文件数据库对象以及按 name=value 格式与这些对象相对应的裸设备文件名映射的 spfile 的文本文件。>]
                [-redoLogFileSize <每个重做日志文件的大小 (MB)>]
                [-recoveryAreaDestination <所有恢复文件的目标目录>]
                [-datafileJarLocation  <数据文件 jar 的位置, 只用于克隆数据库的创建>]
                [-storageType < FS | ASM > 
                        [-asmsnmpPassword     <用于 ASM 监视的 ASMSNMP 口令>]
                         -diskGroupName   <数据库区磁盘组名>
                         -recoveryGroupName       <恢复区磁盘组名>
                [-characterSet <数据库的字符集>]
                [-nationalCharacterSet  <数据库的国家字符集>]
                [-registerWithDirService <true | false> 
                        -dirServiceUserName    <目录服务的用户名>
                        -dirServicePassword    <目录服务的口令>
                        -walletPassword    <数据库 Wallet 的口令>]
                [-listeners  <监听程序列表, 该列表用于配置具有如下对象的数据库>]
                [-variablesFile   <用于模板中成对变量和值的文件名>]]
                [-variables  <以逗号分隔的 name=value 对列表>]
                [-initParams <以逗号分隔的 name=value 对列表>]
                [-sampleSchema  <true | false> ]
                [-memoryPercentage <用于 Oracle 的物理内存百分比>]
                [-automaticMemoryManagement ]
                [-totalMemory <为 Oracle 分配的内存 (MB)>]
                [-databaseType <MULTIPURPOSE|DATA_WAREHOUSING|OLTP>]]

通过指定以下参数来配置数据库:
        -configureDatabase
                -sourceDB    <源数据库 sid>
                [-sysDBAUserName     <用户名 (具有 SYSDBA 权限)>
                 -sysDBAPassword     <sysDBAUserName 用户名的口令>]
                [-registerWithDirService|-unregisterWithDirService|-regenerateDBPassword <true | false> 
                        -dirServiceUserName    <目录服务的用户名>
                        -dirServicePassword    <目录服务的口令>
                        -walletPassword    <数据库 Wallet 的口令>]
                [-disableSecurityConfiguration <ALL|AUDIT|PASSWORD_PROFILE|NONE>
                [-enableSecurityConfiguration <true|false>
                [-emConfiguration <CENTRAL|LOCAL|ALL|NONE>
                        -dbsnmpPassword <DBSNMP 用户口令>
                        -sysmanPassword <SYSMAN 用户口令>
                        [-hostUserName <EM 备份作业的主机用户名>
                         -hostUserPassword <EM 备份作业的主机用户口令>
                         -backupSchedule <使用 hh:mm 格式的每日备份计划>]
                        [-centralAgent <Enterprise Manager 中央代理主目录>]]


通过指定以下参数使用现有数据库创建模板:
        -createTemplateFromDB
                -sourceDB    <服务采用 <host>:<port>:<sid> 格式>
                -templateName      <新的模板名>
                -sysDBAUserName     <用户名 (具有 SYSDBA 权限)>
                -sysDBAPassword     <sysDBAUserName 用户名的口令>
                [-maintainFileLocations <true | false>]


通过指定以下参数使用现有数据库创建克隆模板:
        -createCloneTemplate
                -sourceSID    <源数据库 sid>
                -templateName      <新的模板名>
                [-sysDBAUserName     <用户名 (具有 SYSDBA 权限)>
                 -sysDBAPassword     <sysDBAUserName 用户名的口令>]
                [-maintainFileLocations <true | false>]
                [-datafileJarLocation       <存放压缩格式数据文件的目录>]

通过指定以下参数生成脚本以创建数据库:
        -generateScripts
                -templateName <默认位置或完整模板路径中现有模板的名称>
                -gdbName <全局数据库名>
                [-scriptDest       <所有脚本文件的目标位置>]

通过指定以下参数删除数据库:
        -deleteDatabase
                -sourceDB    <源数据库 sid>
                [-sysDBAUserName     <用户名 (具有 SYSDBA 权限)>
                 -sysDBAPassword     <sysDBAUserName 用户名的口令>]
通过指定以下选项来查询帮助: -h | -help

方法一:

[[email protected] pro]$ dbca -silent -createDatabase -templateName General_Purpose.dbc -gdbname orcl -sid orcl -sysPassword admin -systemPassword admin -dbsnmpPassword admin -sysmanPassword admin -responseFile NO_VALUE -characterSet AL32UTF8 -memoryPercentage 30 -emConfiguration LOCAL
复制数据库文件
1% 已完成
3% 已完成
11% 已完成
18% 已完成
26% 已完成
37% 已完成
正在创建并启动 Oracle 实例
40% 已完成
45% 已完成
50% 已完成
55% 已完成
56% 已完成
60% 已完成
62% 已完成
正在进行数据库创建
66% 已完成
70% 已完成
73% 已完成
85% 已完成
96% 已完成
100% 已完成

[[email protected] pro]$ emctl status dbconsole
Oracle Enterprise Manager 11g Database Control Release 11.2.0.4.0 
Copyright (c) 1996, 2013 Oracle Corporation.  All rights reserved.
https://prodb-s:5500/em/console/aboutApplication
Oracle Enterprise Manager 11g is running. 
------------------------------------------------------------------
Logs are generated in directory /u01/app/oracle/product/11.2.0/dbhome_1/prodb-s_orcl/sysman/log 
[[email protected] pro]$ ps -ef |grep pmon
oracle    3789 10963  0 06:09 pts/5    00:00:00 grep pmon
oracle   29995     1  0 05:48 ?        00:00:00 ora_pmon_orcl

方法二:
也可以通过配置dbca.rsp文件进行数据库创建:

也可以通过配置dbca.rsp文件进行数据库创建:
[[email protected] ~]$ cd /u01/app/oracle/product/11.2.0/dbhome_1/assistants/dbca/
[[email protected] dbca]$ more create_dbca.rsp 
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "createDatabase"
[CREATEDATABASE]
GDBNAME = "orcl"
SID = "orcl"
TEMPLATENAME = "General_Purpose.dbc"
characterSet = "ZHS16GBK" 
memoryPercentage = "20"
sysPassword = "oracle"
systemPassword = "oracle"
dbsnmpPassword = "oracle"
sysmanPassword = "oracle"
EMCONFIGURATION = "LOCAL"
[[email protected] dbca]$ dbca -silent -responseFile create_dbca.rsp


创建进度可以查看:

[[email protected] ~]$ tail -f /u01/app/oracle/cfgtoollogs/dbca/orcl/orcl.log
[[email protected] ~]$ tail -f /u01/app/oracle/cfgtoollogs/dbca/orcl/trace.log


删除数据库实例:
方法一:

[[email protected] pro]$ dbca -silent -deleteDatabase -sourceDB orcl
正在连接到数据库
4% 已完成
9% 已完成
14% 已完成
19% 已完成
23% 已完成
28% 已完成
47% 已完成
正在更新网络配置文件
48% 已完成
52% 已完成
正在删除实例和数据文件
76% 已完成
100% 已完成
有关详细信息, 请参阅日志文件 "/u01/app/oracle/cfgtoollogs/dbca/orcl.log"。


方法二:

[[email protected] dbca]$ cat del_dbca.rsp 
[GENERAL]
RESPONSEFILE_VERSION = "11.2.0"
OPERATION_TYPE = "deleteDatabase"
[DELETEDATABASE]
SOURCEDB = "orcl"

[[email protected] dbca]$ dbca -silent -responseFile del_dbca.rsp


参考:Creating a Database with Noninteractive/Silent DBCA



本文出自 “HUNT” 博客,请务必保留此出处http://hunt1574.blog.51cto.com/1390776/1933535

以上是关于静默建库和删除数据库的主要内容,如果未能解决你的问题,请参考以下文章

oracle 静默建库建监听

静默方式安装10g数据库软件+升级patch+手工建库

记一次linux静默安装oracle加手工建库

dbca静默建库

Linux:oracle11.2.0dbca静默建库

执行dbca静默建库时报错由于以下错误, 无法连接到 ASM: ORA-12547: TNS: 丢失连接