oracle 11g 學習筆記 10_30

來源:互聯網
上載者:User

資料管理員
每個oracle資料庫應該至少有一名資料庫管理員(dba),對於一個小的資料庫,一個dba就夠了,但是對於一個大的資料庫,可能需要多個dba分別擔負不同的管理職責。
*管理員的主要工作:
1)安裝和升級oracle資料庫
2)建庫,資料表空間,表,視圖,索引....
3)制定並實施備份與恢複計劃
4)資料庫許可權管理,調優,故障排除
5)對於進階dba,要求能參與項目開發,會編寫sql語句,預存程序,觸發器,規劃,約束,包

一、資料庫管理員

*資料庫管理員的使用者主要是sys和system 兩者的關係就如是sys是董事長而system是總經理,兩者的許可權都相當大。
它們的區別主要是:
1)最重要的區別,儲存的資料的重要性不同
sys:
所有oracle的資料字典的基表和視圖都存放在sys使用者中,這些基表和視圖對於oracle的運行是至關重要的,由資料庫自己維護,任何使用者都不能手動地更改。sys使用者擁有dba,sysdba,sysoper角色或許可權,是oracle許可權最高的使用者。
system:用於存放次一級的內部資料,如oracle的一些特性或工具的管理資訊。system使用者擁有dba,sysdba角色或系統許可權。
2)其次的區別,許可權的不同
sys使用者
必須以as sysdba或 as sysoper形式登入,不能以normal方式登入資料庫。
system如果正常登入,它其實就是一個普通的dba使用者,但是如果以as sysdba登入,其結果實際上它是作為sys使用者登入的,從登入資訊裡面我們可以看出來。
*dba許可權的使用者、
dba使用者是指具有dba角色的資料庫使用者,特權使用者可以執行啟動執行個體,關閉執行個體等特殊操作,而dba使用者只有在啟動資料庫後才能執行各種管理工作。
二、資料庫(表)的邏輯備份與恢複 

邏輯備份是指使用工具export將資料對象的結構和資料匯出到檔案的過程。邏輯恢複是指當資料庫物件被誤操作而損壞後使用工具import利用備份的檔案把資料對象匯入到資料庫的過程。物理備份即可在資料庫open的狀態下進行也可在關閉資料庫後進行,但是邏輯備份和恢複只能在open的狀態下進行。
1、匯出
匯出具體的分為匯出表,匯出方案,匯出資料庫三種方式。。
匯出使用exp命令來完成,該命令常用的選項有:
userid:用於指定執行匯出操作的使用者名稱,口令,連接字串
tables:用於指定執行匯出操作的表
owner:用於指定執行匯出操作的方案
full=y:用於指定執行匯出操作的資料庫
inctype:用於指定執行匯出操作的增量類型
rows:用於指定執行匯出來操作是否要匯出表中的資料
file:用於指定匯出檔案名稱

*匯出表
(1)匯出自己的表

exp userid=scott/scott@orcl tables=(emp,dept) file=e:\oracle\scott.dnp

其中,'@orcl'的orcl是執行個體名稱,匯出多張表中間用逗號隔開,最後要是有分號的話,那麼匯出表的尾碼就會出現分號。
(2)匯出其他方案的表
如果使用者要匯出其它方案的表,則需要dba的許可權或是exp.full.database的許可權,比如system就可以匯出scott的表

exp userid=system/TGXgt1314@orcl tables=(scott.emp) file=e:\oracle\scott_emp.dnp

其中,tables那裡要指定要匯出誰的表。
提示:
要是匯入匯出命令在PL/SQL Developer裡執行的話,會出現“無效sql語句”的錯誤提示。要成功執行該語句,要到oracle安裝目錄下的bin目
錄下執行。可以用命令列定位到該目錄下,然後執行sql語句。

*匯出表結構

exp userid=scott/scott@orcl tables=(emp,dept) file=e:\oracle\scott2.dnp rows=n

*使用直接匯出方式

exp userid=scott/scott@orcl tables=(emp,dept) file=e:\oracle\scott3.dnp direct=y

這種方法比預設的常規方式速度要快,當資料量大時,額可以考慮使用這樣的方法。
這時,需要資料庫的字元集要與用戶端字元集要完全一致,否則會報錯。

*匯出方案
匯出方案是指用export工具匯出一個方案或是多個方案中的所有對象(表,索引,約束等)和資料,並存放在一個檔案中。
1)匯出自己的方案

exp userid=scott/scott@arcl owner=scott file=e:\oracle\scott_fangan.dnp

2)匯出其它使用者方案
如果使用者要匯出其它方案,則需要dba的許可權或是exp.full.database的許可權,比如system就可以匯出scott的方案

exp userid=system/TGXgt1314@orcl owner=scott file=e:\oracle\scott_fangan2.dnp

*匯出資料庫
匯出資料庫是指利用export匯出所有資料庫中的對象及資料
需要dba的許可權或是exp.full.database的許可權

exp userid=system/TGXgt1314@orcl full=y inctype=complete file=e:\oracle\database.dnp

其中,full=y inctype=complete是增量備份,好處:第二次備份的時候只要求備份有變化的,速度要快些。

2、匯入
匯入就是使用工具import將檔案中的對象和資料匯入到資料庫中,但是匯入要使用檔案必須是export所匯出的檔案匯入也分為匯入表,匯入方案,匯入資料庫三種方式。
imp常用的選項有:
userid:用於指定執行匯入操作的使用者名稱,口令,連接字串
tables:用於指定執行匯入操作的表
formuser: 用於指定源使用者
touser:用於指定目標使用者
full=y:用於指定執行匯入整個檔案
inctype:用於指定執行匯入操作的增量類型
rows:用於指定執行匯入來表行(資料)
file:用於指定匯入檔案名稱
ignore:如果表存在,則只匯入資料

1)匯入自己的表

imp userid=scott/scott@orcl tables=(emp,dept) file=e:\oracle\scott.dnp

2)匯入表到其它使用者
要求該使用者具有dba的許可權,或是imp.full.database

imp userid=system/TGXgt1314 tables(emp,dept) file=e:\oracle\scott.dnp touser=scott

其中'touser=scott'表示的是指定匯入到scott使用者
3)匯入表的結構
只匯入表的結構而不到入資料

imp userid=scott/scott@orcl tables=(emp,dept) file=e:\oracle\scott.dnp rows=n

4)匯入資料

如果對象(如表)已經存在,那可以只匯入表的資料

imp userid=scott/scott@orcl tables=(emp,dept) file=e:\oracle\scott.dnp ignore=y

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.