oracle12c 實戰 建立PDB用戶 建立表空間 導入DMP數據

    對於一個習慣使用oracle11g的數據庫管理員,開始接觸安裝oracle12c後,第一個問題就是怎麼連基本的用戶都建立不了,連DBA權限都無論用。html

 

 

 

 

 

 

    

 

原來oracle11的DB變爲了CDB(Container Database)和PDB(Pluggable Database)兩個概念,CDB就至關於oracle11之前建立的數據庫,而PDB則是oracle12引入的插接式數據庫,可建立多個掛載在CDB下,這就意味着你沒法在CDB中建立普通用戶,所建立的用戶前必須加上「C##」來顯示這是CDB級的用戶才能成功建立,java

 

 

 

 

 

 

例:create user C##joker identified by "joker"; ----「C##joker」爲用戶名,「joker」爲密碼linux

    因此對於用慣了oracle11的同志來講,要建立普通用戶須要在PDB環境中這麼添加。sql

在安裝好oracle12後,數據庫

首先以 SYS as SYSDBA@ORCL登陸,至關於進入CDB;windows

而後,建立PDB掛載在CDB下:session

在windows中,直接進入「Database Configuration Assistant」添加PDB;oracle

 

 

 

 

 

 

在Linux中建立PDB,參考以下:ide

http://jingyan.baidu.com/article/f71d6037ac90101ab641d1d1.htmlspa

可以使用以下sql查詢你所建立的PDB:

select pdb_id,pdb_name,dbid,status,creation_scn from dba_pdbs;----查詢pdb有哪些

以後,在CDB環境中進入PDB,sql以下:

alter session set container=JOKERPDB;---開啓PDB數據庫鏈接
alter pluggable database JOKERPDB open;----打開PDB數據庫

以後,手動配置PDB的tnsnames.ora

JOKERPDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = JOKERPDB)
    )
  )

以後,進入tns配好的PDB數據庫,並在PDB下建立PDB用戶,sql以下:

create user JOKER identified by "joker";
grant DBA to JOKER;---給用戶DBA權限;友情提示:權限大小酌情

以後,給用戶建立表空間,sql以下:

create tablespace JOKERSPACE
    logging
    datafile 'D:/oracle12/oradata/joker/datafile/JOKER.dbf'
    size 524288000
    autoextend on
    next 104857600 maxsize 32767M
    extent management local;
    
alter user JOKER default tablespace JOKERSPACE;---用戶綁定表空間
alter user JOKER quota unlimited on JOKERSPACE;---限制表空間,unlimited表示不限制

最後附上導入DMP數據:

windows在cmd中執行,linux用"su oracle"執行
imp username/password@pdb file=D:/joker.dmp fromuser=JOKER touser=JOKER log=imp.log buffer=100000000
username/password@pdb----依次是PDB用戶名,密碼,數據庫名
log----------------------生成導入日誌,地址本身定義
buffer-------------------緩衝區,防止數據過大

Oracle12C 鏈接數據庫  "jdbc:oracle:thin:@localhost:1521/JOKERPDB";(端口號跟斜線,再也不是冒號)

相關文章
相關標籤/搜索