Oracle 12c如何创建和删除PDB
这篇文章主要为大家展示了“Oracle 12c如何创建和删除PDB”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Oracle 12c如何创建和删除PDB”这篇文章吧。
1. 手工创建PDB
从SEED database 创建PDB的时候,可以指定文件存放的位置。 有两种方法可以指定文件的位置。
第一种是在CREATE PLUGGABLE DATABASE 语法中添加FILE_NAME_CONVERT选项。
http://www.cndba.cn/dave/article/221
http://www.cndba.cn/dave/article/221
SQL>setlin120SQL>colnamefora60SQL>select*fromv$dbfile;13/u01/app/oracle/oradata/dave/pdb1/ado2.dbf314/u01/app/oracle/oradata/dave/pdb1/cndba01.dbf322/u01/app/oracle/oradata/dave/cndba/system.dbf423/u01/app/oracle/oradata/dave/cndba/sysaux.dbf424/u01/app/oracle/oradata/dave/cndba/users.dbf425/u01/app/oracle/oradata/dave/cndba/ado1.dbf426/u01/app/oracle/oradata/dave/cndba/ado2.dbf418rowsselected.
查看PDB的位置,创建新目录:
[oracle@Ora12c~]$mkdir/u01/app/oracle/oradata/dave/huainingSQL>createpluggabledatabasehuainingadminusercndbaidentifiedbycndbafile_name_convert=('/u01/app/oracle/oradata/dave/pdbseed/','/u01/app/oracle/oradata/dave/huaining/');Pluggabledatabasecreated.
也可以简写:http://www.cndba.cn/dave/article/221
createpluggabledatabasehuainingadminusercndbaidentifiedbycndbafile_name_convert=('pdbseed','huaining');SQL>showpdbsCON_IDCON_NAMEOPENMODERESTRICTED------------------------------------------------------------2PDB$SEEDREADONLYNO3PDB1READWRITENO4CNDBAREADWRITENO5HUAININGMOUNTED
--查看PDB的状态:是NEW,测试是不可用的。
http://www.cndba.cn/dave/article/221
SQL>setlin120SQL>colpdb_namefora15SQL>selectpdb_name,statusfromdba_pdbs;PDB_NAMESTATUS------------------------PDB1NORMALPDB$SEEDNORMALCNDBANORMALHUAININGNEW
必须显示的打开数据库:http://www.cndba.cn/dave/article/221
SQL>alterpluggabledatabasehuainingopen;Pluggabledatabasealtered.SQL>showpdbsCON_IDCON_NAMEOPENMODERESTRICTED------------------------------------------------------------2PDB$SEEDREADONLYNO3PDB1READWRITENO4CNDBAREADWRITENO5HUAININGREADWRITENOSQL>selectpdb_name,statusfromdba_pdbs;PDB_NAMESTATUS------------------------PDB1NORMALPDB$SEEDNORMALCNDBANORMALHUAININGNORMAL
第二种方法,就是先指定PDB_FILE_NAME_CONVERT 参数的值,然后执行创建命令,此时就不需要指定FILE_NAME_CONVERT选项。
http://www.cndba.cn/dave/article/221
[oracle@Ora12cpdbseed]$mkdir/u01/app/oracle/oradata/dave/ahdbaSQL>showparameterpdb_NAMETYPEVALUE-----------------------------------------------------------------------------pdb_file_name_convertstringpdb_lockdownstringpdb_os_credentialstringSQL>altersessionsetpdb_file_name_convert='/u01/app/oracle/oradata/dave/pdbseed/','/u01/app/oracle/oradata/dave/ahdba/';Sessionaltered.SQL>showparameterpdb_NAMETYPEVALUE-----------------------------------------------------------------------------pdb_file_name_convertstring/u01/app/oracle/oradata/dave/pdbseed/,/u01/app/oracle/oradata/dave/ahdba/pdb_lockdownstringpdb_os_credentialstringSQL>SQL>createpluggabledatabaseahdbaadminusercndbaidentifiedbycndba;Pluggabledatabasecreated.SQL>showpdbsCON_IDCON_NAMEOPENMODERESTRICTED------------------------------------------------------------2PDB$SEEDREADONLYNO3PDB1READWRITENO4CNDBAREADWRITENO5HUAININGREADWRITENO6AHDBAMOUNTEDSQL>alterpluggabledatabaseahdbaopen;Pluggabledatabasealtered.SQL>showpdbsCON_IDCON_NAMEOPENMODERESTRICTED------------------------------------------------------------2PDB$SEEDREADONLYNO3PDB1READWRITENO4CNDBAREADWRITENO5HUAININGREADWRITENO6AHDBAREADWRITENOSQL>
2. 手工删除PDB
在删除PDB的时候,有2个选项 KEEP DATAFILES 和 including DATAFILES,默认是KEEP.
SQL>showpdbsCON_IDCON_NAMEOPENMODERESTRICTED------------------------------------------------------------2PDB$SEEDREADONLYNO3PDB1READWRITENO4CNDBAREADWRITENO5HUAININGREADWRITENO6AHDBAREADWRITENOSQL>droppluggabledatabasehuaining;droppluggabledatabasehuaining*ERRORatline1:ORA-65179:cannotkeepdatafilesforapluggabledatabasethatisnotunpluggedSQL>!oerrora6517965179,00000,"cannotkeepdatafilesforapluggabledatabasethatisnotunplugged"//*Cause:Anattemptwasmadetodropapluggabledatabasewithout//specifyingtheINCLUDINGDATAFILESclause,andthepluggable//databasehasnotbeenunplugged.//*Action:Unplugthepluggabledatabasebeforedroppingthepluggable//databaseorusetheINCLUDINGDATAFILESclauseinthe//DROPPLUGGABLEDATABASEstatement.//SQL>droppluggabledatabasehuainingincludingdatafiles;Pluggabledatabasedropped.SQL>showpdbsCON_IDCON_NAMEOPENMODERESTRICTED------------------------------------------------------------2PDB$SEEDREADONLYNO3PDB1READWRITENO4CNDBAREADWRITENO6AHDBAREADWRITENOSQL>操作系统层面看,对应的文件,也一起删除了:[oracle@Ora12chuaining]$pwd/u01/app/oracle/oradata/dave/huaining[oracle@Ora12chuaining]$ls[oracle@Ora12chuaining]$
如果是使用KEEP datafiles,那么在执行drop 之前,必须先执行unplug的操作。
SQL>droppluggabledatabaseahdbakeepdatafiles;droppluggabledatabaseahdbakeepdatafiles*ERRORatline1:ORA-65179:cannotkeepdatafilesforapluggabledatabasethatisnotunpluggedSQL>alterpluggabledatabaseahdbaunpluginto'/tmp/ahdba.xml';Pluggabledatabasealtered.SQL>droppluggabledatabaseahdbakeepdatafiles;Pluggabledatabasedropped.
删除成功。
以上是“Oracle 12c如何创建和删除PDB”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。