oracle 12c 安裝指南(各類問題總結)

 

1.首先從官網下載安裝包http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html這裏我提供的是官網的下載地址,直接打開後選擇對應的操做系統便可下載。(右上角有切換中文選項能夠更清楚的瞭解版本信息)html

2.下載完成後,解壓,而後點擊安裝便可(由於我安裝的是12c,我會介紹這個版本安裝會出現的問題與解決方案)。java

 

,3,開始安裝:sql

 電子郵件不填,下面把對號去掉,而後下一步。(能夠不去,我怕麻煩因此去掉了)數據庫

     4,建立和配置數據庫,直接點擊下一步c#

5,默認桌面類,直接點擊下一步(我安裝的是服務器類,功能比較完整,推薦服務器類)windows

6,選中建立新的windows用戶,用戶名跟密碼本身取,取個簡單的比較好,容易記住。填好以後點擊下一步,可能會彈框說你的口令跟規則的不同,服務器

    直接點擊是就好了。session

7 這裏的目錄能夠自定義,選一個內存空間比較大的盤安裝,若是內存不足的話會致使後面沒法安裝的。口令就是你以前oracle

輸入的哪個。我沒試過弄個不同的。點擊下一步。app

 有以下這種彈框直接點是就能夠了。

9.這個時候就會檢查內存什麼的是否符合了,此時可能會出現path路徑問題,也就是系統變量中的path文件過長,能夠打開後刪除一些,不過不建議這麼作,若是出現此問題先忽略,等會我會講述手動配置方案。

10 檢查完經過以後,會給你這個信息,你能夠截圖保存一下,之後可能會用到。點擊安裝。

11,以後就是耐心等待安裝了。

12,接着會彈出以下框出來,點擊口令管理。去設置口令。這一步最爲關鍵,我第一次就是不當心忽略了這個而花費了大量的時間去查閱資料才解決了這個問題,若是你也不當心關掉了這個界面,不用慌,不用去重裝,等下面我會提供解決方案,下圖是正常過程。

13,SYS SYSTEM以後就是你要用到的用戶了。你能夠填寫口令,不過必定要記住。以後的oracle連接都是用戶跟口令經過才能夠連接成功,不填的話會默認爲你以前的口令。這裏我沒有填,直接點擊肯定。

14,點擊肯定。

15,這下你就安裝成功了。點擊關閉就能夠了。

16,運行哪裏像輸入cmd同樣輸入sqlplus 會彈出一下這個

輸入米的用戶名跟密碼就能夠了,也能夠這樣輸入:SYSTEM/123456 ,123456只是列子,就是你的密碼

顯示一下這個就說明你成功安裝了。

以上就是oracle12c的所有安裝流程了若是按照上圖所示顯示 已鏈接,那麼恭喜你順利的安裝了Oracle;

若是並不能出現已鏈接字樣,那麼就要提一下我前面的兩個伏筆了。

1.首先是忽略的環境變量問題

打開win+r窗口後輸入sqlplus.exe會提示找不到文件,這就是環境變量問題,相信安裝過java jdk的都應該有所利瞭解。

解決方案:個人電腦(右擊)->屬性->環境變量->下面有個系統變量->找到path(雙擊)->新建(目錄是你本身設定的Oracle的安裝位置這是個人path內容:E:\Oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN,在文件管理器中根據這個目錄依次找到admin,而後複製進path裏的新建框)。

環境變量配置正確便可出現此窗口。

2.忘了配置用戶口令或沒有創建用戶scott

網上的教程多爲oracle 11g,而12c 又有所不一樣,我只講操做方法,具體原理不在細述,感興趣的能夠度娘。

解決方案:由於沒有普通用戶,因此咱們就新建一個。

方法以下:

一.若是沒有配置口令按以下方法操做:

1.進入運行窗口或者命令行,輸入sqlpus;

 2.輸入用戶名:sys;

輸入口令:sys as sysdba;   //注意不要丟失空格,輸入口令是不能看到的因此儘可能不要敲錯

 3.輸入alter user scott account unlock;

用戶已更改

 4.輸入commit;//提交數據之意

提交完成

  5.輸入 conn scott/tiger

已鏈接。

 二.若是提示用戶不存在

1.進入運行窗口或者命令行,輸入sqlpus;

 2.輸入用戶名:sys;

輸入口令:sys as sysdba;   //注意不要丟失空格,輸入口令是不能看到的因此儘可能不要敲錯

1、驗證scott用戶是否存在

用oracle用戶登陸 su - oracle ,以後用sys用戶登陸數據庫

$sqlplus / as sysdba

SQL>conn scott/tiger

ORA-28000:the account is locked

此時說明soctt用戶被鎖定或者不存在,先解鎖試試

$sqlplus / as sysdba

SQL>alert user scott account unlock;

ORA-01918: user scott does not exist

此時說明scott用戶不存在

添加scott用戶

1.咱們以SYS用戶從新鏈接

SQL>conn sys/密碼 as sysdba   //密碼默認sys

2.執行scott.sql文件     

SQL>@F:\oracle\product\10.2.0\db_1\RDBMS\ADMIN\scott.sql

這樣scott用戶就被添加進來,默認密碼是tiger

SQL>conn scott/tiger 鏈接成功       //我是屬於那種添加後也無法鏈接成功的狀況,因此我新建了用戶C##scott

SQL>SHOW USER;

USER爲「SCOTT」

3.若是想修改scott的默認密碼能夠執行下面命令(先以sys權限登陸:sqlplus / as sysdba)

修改scott的登陸密碼

SQL> alter user scott identified by tiger;

可是在12版本中有一點很值得注意,那就是新建用戶的方法:

create user c##scott identified by tiger   //用戶名必須以c##開頭 

 而後受權。//方法在下文

1.用戶登陸:用戶名:scott,密碼:scott

1.Oracle中的各個用戶以下:

0.數據庫統一管理帳號:orcl

 

1.普通用戶:用戶名:scott,密碼:scott

2.普通管理員:system,密碼:system

3.超級管理員:用戶名:sys,密碼:sys

2.爲了便於記憶,用戶名和密碼同樣

2.修改用戶口令,

1.在doc窗口修改

1.此操做必需要在system這個帳號下才能進行,不然沒有權限,在這個帳號下能夠修改任何用戶的口令

 

2.語法爲:alter user 用戶名 identified by 新口令;

如:alter user system identified by system;

3.當回車後出現用戶已更改,則表示修改爲功

2.在sqlplus中修改

1.以管理員身份登陸

2.執行sql語句

如:alter user system identified by system;

3.對沒有解鎖的用戶進行解鎖並修改口令

1.在doc窗口修改

1.基本語法:alter user 用戶名 account unlock;

如:alter user hr account unlock;

2.該操做也必需要在system用戶下進行操做

2.在sqlplus中修改

1.以管理員身份登陸

2.執行sql語句

如:alter user hr account unlock;

 

  下面是一些操做:

1,建立表空間

create tablespace hxzg_data

logging

datafile 'C:\app\data\hxzg_data.dbf'

size 50m

autoextend on

next 50m maxsize 20480m ;

2,建立用戶

create user db_hxzg identified by 123 

default tablespace hxzg_data;

3,復權

grant resource,connect to db_hxzg;

4,給其餘用戶訪問權限(db_hxzg以DBA權限登陸)

grant select any table to sun;

 

建立

create user sun identified by 123;        //建立用戶

alert user sun identified by tiger;      //修改密碼

刪除

drop user sun cascade;            //刪除用戶及對象

drop user sun;                        //刪除用戶

受權

一、默認的普通用戶sun默認未解鎖,不能進行那個使用,新建的用戶也沒有任何權限,必須授予權限

grant create session to sun;            //授予sun用戶建立session的權限,即登錄權限
grant unlimited tablespace to sun;  //授予sun用戶使用表空間的權限
grant create table to sun;              //授予建立表的權限
grant drop any table to sun;                //授予刪除表的權限
grant insert any table to sun;               //插入表的權限
grant update any table to sun;             //修改表的權限

grant all to public;                         //這條比較重要,授予全部權限(all)給全部用戶(public)

二、oralce對權限管理比較嚴謹,普通用戶之間也是默認不能互相訪問的,須要互相受權

  

  grant select on tablename to sun;//授予sun用戶查看指定表的權限

  grant drop on tablename to sun;//授予刪除表的權限

  grant insert on tablename to sun;//授予插入的權限

  grant update on tablename to sun;//授予修改表的權限

  grant insert(id) on tablename to sun;

  grant update(id) on tablename to sun;//授予對指定表特定字段的插入和修改權限,注意,只能是insert和update

  grant alert all table to sun;//授予sun用戶alert任意表的權限

撤銷權限

  基本語法同grant,關鍵字爲revoke

查看權限

  select * from user_sys_privs;//查看當前用戶全部權限

  select * from user_tab_privs;//查看所用用戶對錶的權限

權限傳遞

  即用戶A將權限授予B,B能夠將操做的權限再授予C,命令以下:

  grant alert table on tablename to sun with admin option;//關鍵字 with admin option

  grant alert table on tablename to sun with grant option;//關鍵字 with grant option效果和admin相似

角色

  角色即權限的集合,能夠把一個角色授予給用戶

  create role myrole;//建立角色

  grant create session to myrole;//將建立session的權限授予myrole

  grant myrole to sun;//授予sun用戶myrole的角色

  drop role myrole;刪除角色

相關文章
相關標籤/搜索