資料庫試題1

2021-08-29 20:04:37 字數 4148 閱讀 8963

[b]1.建立使用者時,需要賦予新使用者什麼許可權才能使它聯上資料庫。[/b] connect

[b]2. 如何在tablespace裡增加資料檔案?[/b]

alter tablespace add datafile size

[b]3. 如何變動資料檔案的大小?[/b]

alter database datafile resize

[b]4. 哪個view用來檢查資料檔案的大小?[/b]

dba_data_files

[b]5. 哪個view用來判斷tablespace的剩餘空間?[/b]

dba_free_space

[b]6. 如何判斷誰往表裡增加了一條紀錄?[/b]

auditing

[b]7. 如何重構索引?[/b]

alter index index-name rebuild ;

[b]8. 解釋什麼是partitioning(分割槽)以及它的優點。[/b]

patition將大表或者索引分割成更小,易與管理。

[b]9. 你剛剛編譯了乙個pl/sql package但是有錯誤報道,如何顯示出錯資訊?[/b]

show errors

[b]10. 如何蒐集表的各種狀態資料?[/b]

analyze

[b]11. 如何啟動session級別的trace[/b]

dbms_session.set_sql_trace

alter session set sql_trace=true

[b]12. import和sql*loader 這2個工具的不同點[/b]

import只能匯入由另乙個資料庫工具export匯出的資料;

sql*loader 可以匯入不同的ascii格式的資料來源。

[b]13.用於網路連線的2個檔案?[/b]

tnsnames.ora sqlnet.ora black_snail

[b]14.請說明例項與資料庫的關係;表空間和資料檔案的關係?[/b]

資料庫:顧名思義是資料的集合,而oracle則是管理這些資料集合的軟體系統,它是乙個物件關係型的資料庫管理系統。

資料庫例項:資料庫啟動時,分配sga並啟動後台程序。後台程序和記憶體緩衝的集合合稱為資料庫例項。

表空間: 表空間是oracle對物理資料庫上相關資料的邏輯對映。乙個資料庫在邏輯上被劃分成一到若干個表空間,每個表空間包含了在邏輯上相關聯的一組結構。每個資料庫至少有乙個表空間(稱之為system表空間)。

資料檔案:每個表空間由同一磁碟上的乙個或多個檔案組成,這些檔案叫資料檔案(datafile)。資料檔案的大小之和即為表空間的儲存能力。

[b]15.請闡述同議詞的作用.你認為情況下要使用同義詞.?[/b]

建立同義詞語句:

create public synonym table_name for user.table_name

其中第乙個user_table和第二個user_table可以不一樣。 此外如果要建立乙個遠端的資料庫上的某張表的同義詞,需要先建立乙個database link(資料庫連線)來擴充套件訪問,然後在使用如下語句建立資料庫同義詞:

create synonym table_name for table_name@db_link;

當然,你可能需要在user使用者中給當前使用者(user2)授權:

grant select/delete/update on user2

刪除同義詞:

drop public synonym table_name;

[b]16.檢視所有同義詞: [/b]

select * from dba_synonyms

好處:節省大量的資料庫空間,對不同使用者的操作同一張表沒有多少差別;擴充套件的資料庫的使用範圍,能夠在不同的資料庫使用者之間實現無縫互動;同義詞可以建立在不同乙個資料庫伺服器上,通過網路實現連線

[b]17.解釋冷備份和熱備份的不同點以及各自的優點:[/b]

答:熱備份針對歸檔模式的資料庫,在資料庫任然處於工作狀態時進行備份。而冷備份是在資料庫關閉後進行備份,適合所有模式的資料庫。

熱備份優點:備份期間資料庫仍然可用,可以將資料庫恢復到任意乙個時間點。

[b]18. 你必須利用備份恢復資料庫,但是你沒有控制檔案,該如何解決問題呢?[/b]

自己建立乙個控制檔案,用帶backup control file 子句的recover命令恢復資料庫。

[b]19. 如何轉換init.ora到spfile?[/b]

使用create spfile form pfile 命令。

[b]20. 解釋data block , extent 和 segment的區別[/b]

data block是資料庫中最小的邏輯儲存單元。

當資料庫的物件需要更多的物理儲存空間時,連續的data block就組成了extent,乙個資料庫物件擁有的所有extends被稱為該物件的segment.

[b]21. 給出兩個檢查表結構的方法 [/b]

desc

dbms_metadata.get_ddl

[b]22. 怎樣檢視資料庫引擎的報錯[/b]

alert log.

[b]23. 比較truncate和delete 命令[/b]

二者都用來刪除表中所有的記錄。區別在於:truncate 是ddl操作,不需要rollback segment ,而delete是dml操作,需要rollback segement且花費較長時間。

[b]24. 使用索引的理由[/b]

快速訪問表中的data block

[b]25. 如何在不影響子表的前提下,重建乙個母表[/b]

子表的外來鍵強制實效,重建母表,啟用外來鍵

[b]26. 給出資料庫正常啟動所經歷的幾種狀態 ?[/b]

startup nomount 資料庫例項啟動

startup mount 資料庫裝載

startup open 資料庫開啟

[b]27. 哪個column可以用來區別v$檢視和gv$檢視?[/b]

inst_id 指明集群環境中具體的某個instance .

17. 如何生成explain plan?

[b]28. 如何增加buffer cache的命中率?[/b]

解答:在資料庫較繁忙時,適用buffer cache advisory 工具,查詢v$db_cache_advice . 如果有必要更改,可以使用 alter system set db_cache_size 命令

[b]28.ora-01555的應對方法?[/b]

解答:具體的出錯資訊是snapshot too old within rollback seg , 通常可以通過增大rollback seg來解決問題。當然也需要察看一下具體造成錯誤的sql。

[b]29. 解釋$oracle_home和$oracle_base的區別?[/b]

echo $oracle_home

要用oracle使用者,你看一下/home/oracle目錄下的.profile檔案裡面有沒有

oracle_home=......

export oracle_home 之類的東西。

還要確保/home/oracle/.dtprofile檔案裡面最後一行dtsourceprofile=true沒有被注釋掉。

需要oracle使用者執行

[b]su – oracle[/b]

unix區分大小寫的:su - oracle和su oracle的效果完全不一樣,su - oracle會執行oracle的.profile檔案,su oracle不會。

oracle_base下是admin和product

oracle_home下則是oracle的命令、連線庫、安裝助手、listener等等。

oracle_home比oracle_base目錄要更深一些。也就是:oracle_home=$oracle_base/product/version

oracle_base是oracle的根目錄,oracle_home是oracle產品的目錄。

簡單說,你如果裝了2個版本的oracle,那麼oracle_base可以是乙個,但oracle_home是2個

全域性資料庫名用於區別分布式資料庫各個不同機器上的例項。 sid用於區別同一臺機器上的不同例項, 即乙個用於外部區分;乙個用於內部區分。

[b]30如何判斷資料庫的時區?[/b]

解答:select dbtimezone from dual;

筆試題 資料庫 1

1.資料庫正確執行的四個基本要素是什麼?acid特性 原子性 atomicity 一致性 consistency 隔離性 isolation 永續性 durability 2.b 儲存所有的臨時表和臨時儲存過程。a.master資料庫b.tempdb資料庫c.model資料庫d.msdb資料庫 sq...

orale資料庫試題(1)

1 解釋function,procedure和package區別 答 function 和procedure是pl sql 的集合,通常為了完成乙個任務。procedure 不需要返回任何值而function將返回乙個值在另一方面,package是為了完成乙個商業功能的一組function和proc...

資料庫試題

資料庫方面 1.儲存過程和函式的區別 儲存過程是使用者定義的一系列sql語句的集合,涉及特定表或其它物件的任務,使用者可以呼叫儲存過程,而函式通常是資料庫已定義的方法,它接收引數並返回某種型別的值並且不涉及特定使用者表。2.事務是什麼?事務是作為乙個邏輯單元執行的一系列操作,乙個邏輯工作單元必須有四...