oracle11g經過dbca克隆實例:
一、建模
dbca -silent(靜默方式) -createCloneTemplate(使用現有數據庫建立克隆模板) -sourceDB(目標數據源) -templateName(模板名稱)
例:
dbca -silent -createCloneTemplate -sourceDB satetest -templateName satedev
二、拷貝模板(兩邊環境須要一致,安裝路徑不用)將模板文件拷貝至目標主機的模板目錄下
路徑:
$ORACLE_HOME/assistants/dbca/templates/
文件:
templateName.ctl、templateName.dbc、templateName.dfb
三、經過模板新建實例
dbca -silent -createDatabase(建立數據庫) -templateName(模板名稱) -gdbName(全局數據庫名) -sid(數據庫系統標示符) -sysPassword(sys用戶密碼) -systemPassword(system用戶密碼)
-datafileDestination(全部數據庫文件的目標目錄) -characterSet(數據庫的字符集) -nationalCharacterSet(數據庫的國家字符集)
例:
dbca -silent -createDatabase -templateName /home/oracle/product/11.2.0/dbhome_1/assistants/dbca/templates/satedev.dbc -gdbName satedev -sid satedev -sysPassword 12345678 -systemPassword 12345678 -datafileDestination $ORACLE_BASE/oradata -characterSet ZHS16GBK -nationalCharacterSet AL16UTF16
四、用戶解鎖重設密碼
alter user user_name identified by password account unlock;
五、刪除數據庫
例:
dbca -silent -deleteDatabase -sourceDB 數據庫實例名
附錄1、dbca -help
[oracle@njrd104 ~]$ dbca -help
dbca [-silent | -progressOnly | -customCreate] {<command> <options> } | { [<command> [options] ] -responseFile <response file > } [-continueOnNonFatalErrors <true | false>]
有關詳細信息, 請參閱手冊。
能夠輸入如下命令之一:
經過指定如下參數建立數據庫:
-createDatabase
-templateName <現有模板的名稱>
[-cloneTemplate]
-gdbName <全局數據庫名>
[-policyManaged | -adminManaged <策略管理或管理員管理的數據庫, 默認爲管理員管理的數據庫>]
[-createServerPool <建立將由要建立的數據庫使用的服務器池>]
[-force <在沒有足夠空閒服務器的狀況下強制建立服務器池。這可能會影響已在運行的數據庫>]
-serverPoolName <若是建立服務器池, 則爲一個服務器池名稱; 若是使用服務器池, 則爲服務器池名稱的逗號分隔列表>
-[cardinality <爲要建立的新服務器池指定基數, 默認爲合格的節點數>]
[-sid <數據庫系統標識符>]
[-sysPassword <SYS 用戶口令>]
[-systemPassword <SYSTEM 用戶口令>]
[-emConfiguration <CENTRAL|LOCAL|ALL|NOBACKUP|NOEMAIL|NONE>
-dbsnmpPassword <DBSNMP 用戶口令>
-sysmanPassword <SYSMAN 用戶口令>
[-hostUserName <EM 備份做業的主機用戶名>
-hostUserPassword <EM 備份做業的主機用戶口令>
-backupSchedule <使用 hh:mm 格式的每日備份計劃>]
[-smtpServer <電子郵件通知的發件 (SMTP) 服務器>
-emailAddress <電子郵件通知的電子郵件地址>]
[-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 對列表>]
[-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|NOBACKUP|NOEMAIL|NONE>
-dbsnmpPassword <DBSNMP 用戶口令>
-symanPassword <SYSMAN 用戶口令>
[-hostUserName <EM 備份做業的主機用戶名>
-hostUserPassword <EM 備份做業的主機用戶口令>
-backupSchedule <使用 hh:mm 格式的每日備份計劃>]
[-smtpServer <電子郵件通知的發件 (SMTP) 服務器>
-emailAddress <電子郵件通知的電子郵件地址>]
[-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
附錄2、查看oracle字符集 數據庫字符集在建立數據庫時指定,在建立後一般不能更改。在建立數據庫時,能夠指定字符集(CHARACTER SET)和國家字符集(NATIONAL CHARACTER SET)。 1. 字符集: (1)用來存儲CHAR, VARCHAR2, CLOB, LONG等類型數據 (2)用來標示諸如表名、列名以及PL/SQL變量等 (3)用來存儲SQL和PL/SQL程序單元等 2. 國家字符集: (1)用以存儲NCHAR, NVARCHAR2, NCLOB等類型數據 (2)國家字符集實質上是爲oracle選擇的附加字符集,主要做用是爲了加強oracle的字符處理能力,由於NCHAR數據類型能夠提供對亞洲使用定長多字節編碼的支持,而數據庫字符集則不能。國家字符集在 oracle9i中進行了從新定義,只能在unicode編碼中的AF16UTF16和UTF8中選擇,默認值是AF16UTF16 3. 查詢字符集參數: 能夠查詢如下數據字典或視圖查看字符集設置狀況 nls_database_parameters、props$、v$nls_parameters 查詢結果中NLS_CHARACTERSET表示字符集,NLS_NCHAR_CHARACTERSET表示國家字符集 4. 修改數據庫字符集: 按照上文所說,數據庫字符集在建立後原則上不能更改。若是須要修改字符集,一般須要導出數據庫數據,重建數據庫,再導入數據庫數據的方式來轉換,或經過ALTER DATABASE CHARACTER SET語句修改字符集,但建立數據庫後修改字符集是有限制的,只有新的字符集是當前字符集的超集時才能修改數據庫字符集,例如UTF8是US7ASCII的超集,修改數據庫字符集可以使用ALTER