oracle是一個(gè)什么信息的呢,指的又是什么的呢。通過下文,oracle面試問題及答案有哪些。我們一起來了解一下。
oracle面試問題及答案有哪些一
這也許是你一直期待的文章,在關(guān)注這部分技術(shù)問題的同時(shí),請(qǐng)務(wù)必閱讀有關(guān)面試中有關(guān)個(gè)人的問題和解答。這里的回答并不是十分全面,這些問題可以通過多個(gè)角度來進(jìn)行解釋,也許你不必在面試過程當(dāng)中給出完全詳盡的答案,只需要通過你的解答使面試考官了解你對(duì)ORACLE概念的熟悉程度。
1。解釋冷備份和熱備份的不同點(diǎn)以及各自的優(yōu)點(diǎn)
解答:熱備份針對(duì)歸檔模式的數(shù)據(jù)庫(kù),在數(shù)據(jù)庫(kù)仍舊處于工作狀態(tài)時(shí)進(jìn)行備份。而冷備份指在數(shù)據(jù)庫(kù)關(guān)閉后,進(jìn)行備份,適用于所有模式的數(shù)據(jù)庫(kù)。熱備份的優(yōu)點(diǎn)在于當(dāng)備份時(shí),數(shù)據(jù)庫(kù)仍舊可以被使用并且可以將數(shù)據(jù)庫(kù)恢復(fù)到任意一個(gè)時(shí)間點(diǎn)。冷備份的優(yōu)點(diǎn)在于它的備份和恢復(fù)操作相當(dāng)簡(jiǎn)單,并且由于冷備份的數(shù)據(jù)庫(kù)可以工作在非歸檔模式下,數(shù)據(jù)庫(kù)性能會(huì)比歸檔模式稍好。(因?yàn)椴槐貙rchive log寫入硬盤)
2。你必須利用備份恢復(fù)數(shù)據(jù)庫(kù),但是你沒有控制文件,該如何解決問題呢?
解答:重建控制文件,用帶backup control file 子句的recover 命令恢復(fù)數(shù)據(jù)庫(kù)。
3。如何轉(zhuǎn)換init。ora到spfile?
解答:使用create spfile from pfile 命令。
4。解釋data block , extent 和 segment的區(qū)別(這里建議用英文術(shù)語(yǔ))
解答:data block是數(shù)據(jù)庫(kù)中最小的邏輯存儲(chǔ)單元。當(dāng)數(shù)據(jù)庫(kù)的對(duì)象需要更多的物理存儲(chǔ)空間時(shí),連續(xù)的data block就組成了extent 。 一個(gè)數(shù)據(jù)庫(kù)對(duì)象擁有的所有extents被稱為該對(duì)象的segment。
5。給出兩個(gè)檢查表結(jié)構(gòu)的方法
解答:1。DESCRIBE命令
2。DBMS_METADATA。GET_DDL 包
6。怎樣查看數(shù)據(jù)庫(kù)引擎的報(bào)錯(cuò)
解答:alert log。
oracle面試問題及答案有哪些二
有三個(gè)用戶test1,test2,test3, 三個(gè)用戶都具有DBA色色權(quán)限。
用TEST1用戶創(chuàng)建一個(gè)表T1,并將其查詢權(quán)限授予TEST2:
SQL> create table t1 as select * from all_objects;
表已創(chuàng)建。
SQL> grant select on t1 to test2;
授權(quán)成功。
SQL> create table t1 as select * from all_objects;
表已創(chuàng)建。
SQL> grant select on t1 to test2;
授權(quán)成功。
用TEST2用戶創(chuàng)建一個(gè)視圖,視圖的基表是TEST1.T1,并將查詢權(quán)限授予TEST3:
SQL> create view v_t1 as select * from test1.t1;
視圖已建立。
SQL> grant select on v_t1 to test3;
授權(quán)成功。
SQL> create view v_t1 as select * from test1.t1;
視圖已建立。
SQL> grant select on v_t1 to test3;
授權(quán)成功。
TEST3用戶查詢視圖TEST2.V_T1:
SQL> select * from test2.v_t1 where rownum<1;
select * from test2.v_t1 where rownum<1
*
ERROR 位于第 1 行:
ORA-01031: 權(quán)限不足
SQL> select * from test2.v_t1 where rownum<1;
select * from test2.v_t1 where rownum<1
*
ERROR 位于第 1 行:
ORA-01031: 權(quán)限不足
可以看到報(bào)了權(quán)限不足的錯(cuò)誤,就算這里TEST3用戶有DBA權(quán)限。
這到底是怎么回事呢?
其實(shí)視圖的權(quán)限,有兩點(diǎn)需要引起注意:
1. 視圖中,類似于定義者權(quán)限的存儲(chǔ)過程,是屏蔽了角色權(quán)限的。比如如果TEST1沒有顯式地將T1表的SELECT權(quán)限給予TEST2,那么TEST2在創(chuàng)建視圖V_T1時(shí)也會(huì)報(bào)ORA-01031錯(cuò)誤,即使TEST2用戶擁有DBA角色權(quán)限。
2.如果在用戶A的視圖中,引用了其他用戶B的表,用戶A將視圖的訪問權(quán)限給予用戶C,那么就變相地將用戶B的表的訪問權(quán)限給予了用戶C,因此,用戶A必須有將用戶B的表的訪問權(quán)限轉(zhuǎn)授用戶C的權(quán)限,也就是用戶B在授予A權(quán)限時(shí),必須使用with grant option。
顯然這里正是由于第2點(diǎn)的原因,導(dǎo)致用戶TEST3不能訪問視圖。用戶TEST1執(zhí)行下面的操作,將解決這個(gè)問題:
SQL> grant select on t1 to test2 with grant option;
授權(quán)成功。
SQL> grant select on t1 to test2 with grant option;
授權(quán)成功。
對(duì)于視圖的UPDATE,DELETE權(quán)限,同樣是如此。
在測(cè)試時(shí),有一個(gè)現(xiàn)象,有點(diǎn)意思。就是如果用戶TEST2沒有顯式地把V_T1的SELECT權(quán)限授予TEST3,而TEST3在有SELECT ANY TABLE或DBA權(quán)限時(shí),則查詢這個(gè)視圖時(shí)不會(huì)報(bào)權(quán)限不足的錯(cuò)誤。由于有SELECT ANY TABLE權(quán)限的存在,所有的用戶表都可以被訪問。但是顯式授予表的權(quán)限時(shí),似乎表的權(quán)限有更高的優(yōu)先級(jí),并且沒有跟系統(tǒng)權(quán)限和角色權(quán)限進(jìn)行結(jié)合;蛘甙姹静煌憩F(xiàn)得不一樣,在我的測(cè)試中,是Oracle 9.2.0.8 for Windows。
1.軍校面試問題和答案面試問題及答案參考
2.人事面試問題答案
3.華為面試問題答案
4.團(tuán)總支面試問題及答案
5.面試客服問題及答案
6.教師面試問題及答案精選
7.醫(yī)生面試問題及答案
8.盤點(diǎn)教師面試問題及答案
9.面試問題大全及答案
10.單招面試問題及答案