您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關Oracle表空間管理和用戶管理的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
Oracle(甲骨文)公司
1977年,三人合伙創辦(Software Development Laboratories,SDL)
1979年,更名為Relational Software Inc.,RSI
1983年,為了突出核心產品 ,RSI更名為Oracle
2002年04月26日,啟用“甲骨文”作為中文注冊商標
表空間是Orcale數據庫邏輯解構的一個重要組件,表空間可以存放各種應用對象,如表、索引等。每一個表空間由一個或多個數據文件組成。
1.1:表空間的分類
表空間可分為三類
類別 | 說明 |
---|---|
永久性表空間 | 一般保存表、視圖、過程和索引等的數據。Oracle會默認安裝一些永久性表空間,如:SYSTEM、USERS等 |
臨時性表空間 | 只用于保存系統中短期活動的數據,如排序數據等 |
撤銷表空間 | 用來幫助回退未提交的事務數據,已提交的數據在這里是不可以恢復的。 |
1.2:表空間的目的
(1)對不同用戶分配不同的表空間,對不同的模式對象分配不同的表空間,方便對用戶數據的操作,對模式對象的管理。
(2)可以將不同數據文件創建到不同的磁盤中,有利于管理磁盤空間,有利于提高I/O性能,有利于備份和恢復數據等。
1.3:創建表空間
創建表空間,語法如下。
CREATE TABLESPACE tbs1 --表空間名稱 DATAFILE 'E:\TeachCase\OracleDB\tbs1.DBF' -- 數據文件存放的位置 SIZE 1M -- 初始大小 AUTOEXTEND ON; -- 自動增長(開,關的話就是 OFF)
1.4:刪除表空間
Drop TABLESPACE tbs1 --表空間名稱;
注意:當表空間沒有被 DROP 時,不能從磁盤上刪除,只有執行了 DROP TABLESPACE 命令之后才可以刪除數據文件,不然的話Oracle會無法執行。
當創建一個新數據庫時,Orcale將創建一些默認的數據庫用戶,如Sys、System 和 Scott等。
2.1:Sys
Sys用戶是Oracle中的一個超級用戶。數據庫中所有數據字典和視圖都存儲在SYS模式中。Sys用戶主要用來維護系統信息和管理實例,Sys用戶只能以SYSOPER或SYSDBA角色登錄系統。
2.2:System
System用戶是Oracle中默認的系統管理員,它擁有DBA權限。該用戶擁有Oracle管理工具使用的內部表和視圖。System用戶不能以SYSOPER或SYSDBA角色登錄系統,只能以默認方式登錄。
2.3:Scott
Scott用戶是Oracle數據庫的一個示范用戶,一般在數據庫安裝時創建。Scott用戶模式包含3個示范表,其中一個是Emp表。使用USERS表空間存儲模式對象。
2.4:創建自定義用戶
通常情況下,處于安全考慮,對不同的數據表需要設置不同的訪問權限。此時,就需要創建不同的用戶。
一個新建的用戶能夠訪問并操作數據庫,須經過以下步驟:
第一步:創建用戶
CREATE USER accp -- 指定用戶名 IDENTIFIED BY accp -- 指定登錄密碼 DEFAULT TABLESPACE tbs1 -- 指定默認表空間,如果不指定將用SYSTEM表空間作為默認表空間 TEMPORARY TABLESPACE TEMP; -- 指定臨時表空間(可選)
第二步:分配角色
GRANT CONNECT TO accp -- CONNECT角色將允許用戶連接數據庫 GRANT RESOURCE TO accp -- RESOURCE角色允許用戶使用數據庫中的空間
第三步:賦予操作權限
GRANT CREATE SEQUENCE TO accp -- 允許用戶創建序列 GRANT SELECT ON EMP TO accp -- 賦予用戶查詢 EMP 表的權限(從scott用戶授權給accp用戶) GRANT ALL ON EMP TO accp; -- 賦予操作表的所有權限
這樣,用戶才算創建成功。以下還有一些擴展操作。
修改口令
ALTER USER accp -- 指定修改的用戶名 IDENTIFIED BY aptech -- 指定新密碼
刪除用戶
DROP USER accp [CASCADE]; -- 當該用戶下有任何的模式對象(表,試圖)時,必須加 CASCADE,否則不能刪除用戶
Oracle 服務說明
OracleServiceORA9 -- 啟動數據庫,必須啟動 OracleOraHome90TNSListener -- 啟動服務器的監聽程序,從外部客戶端連接數據庫所必須 OracleOraHome90HTTPServer -- 啟動Oracle HTTP服務器,從網絡服務數據庫所必須,如用iSQL*plus訪問數據庫
1.查看所有用戶:
select * from dba_user; select * from all_users; select * from user_users;
2.查看用戶系統權限:
select * from dba_sys_privs; select * from all_sys_privs; select * from user_sys_privs;
3.查看用戶對象權限:
select * from dba_tab_privs; select * from all_tab_privs; select * from user_tab_privs;
4.查看所有角色:
select * from dba_roles;
5.查看用戶所擁有的角色:
select * from dba_role_privs; select * from user_role_privs;
6.查看當前用戶的缺省表空間
select username,default_tablespace from user_users;
關于“Oracle表空間管理和用戶管理的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。