上篇介紹了oracle資料庫的基本操作指令:增、刪、改、查以下針對資料庫的管理進行介紹
資料管理員:
至少有乙個資料庫管理員dba。
職責:安裝和公升級oracel資料庫
建庫,表空間,表。檢視。索引
制定並實施備份和恢復計畫
資料庫許可權管理,調優,故障排除
對於高階dba,要求能參與專案開發,會編寫sql語句,儲存過程,觸發器。規則,約束,包
sys 和system差別
1、 最重要。儲存的資料的重要性不同
sys:全部oracle的資料字典的基表和檢視都存放在sys使用者中,這些基表和檢視對於oracle的執行至關重要,有資料庫自己維護,不論什麼使用者都不能手動更改。sys擁有dba,sysdba,sysoper角色或許可權。是oracle許可權的最高使用者
system :使用者存放次一級的內部資料,如oracle的一些特性或工具的管理資訊,擁有dba,sysdba角色或系統許可權
2、 其次差別
sys必須以as sysdba或as sysyoper形式登入。不能以normal方式登入資料庫
system假設正常登入。事實上就是乙個普通的dba,但假設以as sysdba登入。其結果實際上它是作為sys使用者登入的。
資料庫的邏輯備份和恢復
匯出 匯出表,匯出方案,匯出資料庫
使用exp命令完畢
tables:匯出操作的表
owner:匯出操作的方法
full=y:匯出操作的資料庫
inctype:匯出操作的增量型別
rows :
exp userid=scott/tiger@ myoraltables=(emo,dept) file=d:\e1.dmp
匯出自己的方案
exp scott/tiger@myoral owner= scottfile=d:\scott.dmp
匯出其它的方案
exp system/manager@myoralowner=(system,scott) file=d:\system.dmp
匯出資料庫
exp userid=system/manager@myyoral full=yinctype=complete file =x.dmp
匯入自己表
imp userid=scott.tiger@myortables=(emp) file =d:\xx.dmp
匯入表到其它使用者
imp userid =system/manager@myortables=(emp) file = d:\xx.demp rows =n
匯入資料
imp userid =scott/tiger@myor tables=(emp)file =d:\xx.dmp igore=y
db 提供資料庫的一些系統資訊包含資料字典基表和資料字典檢視。
sql>select table_name from user_tables 查詢該使用者建立的全部的全部**
all_tables 可訪問到的全部表
dba_tables 顯示全部方案擁有的資料庫表
查詢表desc dba_users
查詢有多少彙總角色?
select* from dba_roles
查詢某個使用者。具有如何的角色
select * from dba_role_privs wheregrantee=』username』
當前資料庫的全稱 :
select * from global_name
表空間:資料庫的邏輯組成部分,物理上。資料庫資料存放在資料檔案裡,邏輯上將,資料庫則是存放在表空間中。表空間由乙個或是多個資料檔案組成
資料庫的邏輯結構包含表空間,段。區和塊
表空間:控制資料庫占用的磁碟空間
dba 能夠將不同資料型別部署到不同的位置,有利於提高i/o效能。有利於備份和恢復等管理操作
建立表空間 create tablespace
建立資料庫表空間
create tablespace data01 datafile『d:\test\data01.dbf』 size 20m uniform size 128k
使表空間離線:
alter tablespace users offline
聯機:alter tablespace users online
僅僅讀為read only
包含not null,unique,primay key ,foreign key ,check
表跟表的關係 references
刪除約束:alter table 表名 drop primary key cascade.
用於加速資料訪問的資料物件。
單列索引:
create index 索引名 on 表名(列名)
復合索引:
create index emp_indes on emp(ename,job );
缺點:占用硬碟和記憶體 1.2倍
額外更新索引
顯示索引
select index_name ,index_type formuser_indexes where table_name=』表名』
查詢許可權
select * from system_privilege_map order byname
查詢某個角色包含哪些許可權
select * from dba_sys_privs wheregrantee=』dba』
以上主要介紹了資料庫管理員的職責以及許可權,資料庫完整性中的新增索引的利弊等管理。這部分儘管每乙個開發者都經常使用的到功能。可是作為資料庫管理,專案開發的管理人員確實必需要考慮而且做好的一項重要職責。
Oracle基礎(三)資料庫管理
上篇介紹了oracle資料庫的基本操作指令 增 刪 改 查下面針對資料庫的管理進行介紹 資料管理員 至少有乙個資料庫管理員dba,職責 安裝和公升級oracel資料庫 建庫,表空間,表,檢視,索引 制定並實施備份和恢復計畫 資料庫許可權管理,調優,故障排除 對於高階dba,要求能參與專案開發,會編寫...
Oracle 基礎之資料庫管理
oracle資料庫管理需要對應的許可權,最好是dba許可權 01 建立使用者給其乙個密碼 必須給其乙個密碼 02create user king identified by king 03 建立的新使用者要給其許可權 04grant connect to king 05grant resource ...
Oracle資料庫基礎 三 查詢
關聯查詢 1 笛卡爾積 指做關聯操作的每個表的每一行都和其他表的每一行的組合,假設兩個表的記錄條數分別是x和y,笛卡爾積將返回x y條記錄.select count from emp select count from dept select emp.ename,dept.dname from em...