熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

oracle 基礎入門

2022-06-13   來源: Oracle 

  一ORACLE的表的分類
  REGULAR TABLE普通表ORACLE推薦的表使用很方便人為控制少
  PARTITIONED TABLE分區表人為控制記錄的分布將表的存儲空間分為若干獨立的分區記錄按一定的規則存儲在分區裡適用於大型的表
  
  二建表
   CREATE TABLE 表名 (EMPNO NUMBER(NAME VARCHAR)) PCTFREE PCTUSED
  STORAGE (INITIAL K NEXT K MAXEXTENTS PCTINCREASE ) TABLESPACE 表空間名稱
  [LOGGING|NOLOGGING]所有的對表的操作都要記入REDOLOGORACLE建議使用NOLOGGING
  [CACHE|NOCACHE]是否將數據按照一定的算法寫入內存
  關於PCTFREE 和PCTUSED
  A行遷移和行鏈接
  BPCTFREE制止INSERT為 UPDATE留FREE 空間
  CPCTUSED為恢復INSERT操作而設定的
  
  三拷貝一個已經存在的表
  CREATE TABLE 新表名 STORAGE() TABLESPACE 表空間
  AS SELECT * FROM 老表名
  當老表存在約束觸發的時候不會拷過去
  
  四修改表的參數
  ALTER TABLE 名稱 PCTFREE PCTUSED STOAGE(MAXEXTENTS
  
  五手工分配空間
  
  ALTER TABLE 名稱 ALLOCATE EXTENT(SIZE K DATAFILE
  
  SIZE選項按照NEXT分配
  表所在表空間與所分配的數據文件所在的表空間必須一樣
  
  六水線
  水線定義了表的數據在一個BLOCK中所達到的最高的位置
  當有新的記錄插入水線增高
  當刪除記錄時水線不回落
  減少查詢量
  
  七如何回收空間
  ALTER TABLE 名稱 DEALLOCATE UNUSED [KEEP [M|K]]
  當空間分配過大時可以使用本命令
  如果沒有加KEEP回收到水線
  如果水線《MINEXTENTS的大小回收到MINEXTENTS所指定的大小
  
  八TRUNCATE 一個表
  TRUNCATE TABLE 表名表空間截取MINEXTENT同時水線重置
  
  九DROP 一個表
  DROP TABLE 表名 [CASCADE CONSTRAINTS]
  當一個表含有外鍵的時候是不可以直接DROP的加CASCADE CONSRIANTS將外鍵等約束一並刪掉
  
  十信息獲取
  dba_object
   dba_tables:建表的參數
   DBA_SEGMENTS:
  組合查詢的連接字段DBA_TABLES的table_name+dba_ojbect的object_name+dba_segments的SEGMENT_NAME
  
  第十一章索引的管理
  一索引的分類
  邏輯上
  單列索引 復合索引 唯一索引 非唯一索引
  物理上
  BTREE OR BITMAP
  BTREE (NORMAL和反向索引)
  
  二CREATE INDEX
  CREATE INDEX 名稱 ON 表名(列名) PCTFREE STORAGE() TABLESPACE 名稱
  沒有定義PCTUSED索引是按照一定存儲的如果通過PCTUSED允許恢復對BLOCK的INSERT操作可能影響INDEX的效率
  
  三建立索引的注意事項
  索引對查詢性能有提高但對DML語句有影響
  索引也應該放在一個專用的表空間
  定義索引的EXTENT的大小時=*DB BLOCK
  建立索引時應采用 NOLOGGING
  方式
  四修改索引
  ALTER INDEX 名稱 STORAGE(新值)
  
  五分配空間給索引
  ALTER INDEX 名稱 ALLOCATE EXTENT(SIZE K DATAFILE
  
  六重建索引
  提高查詢性能
  當一個索引重建時老的索引會在新索引建立完成後被刪除
  新索引建立過程中老的索引仍可用於查詢
  硬盤的開銷大
  
  七DROP一個索引
  DROP INDEX 名稱
  
  八信息獲取
  DBA_INDEXES:建索引的參數
  DBA_IND_COLUMNS:
  
  第十二章用戶的管理
  一ORACLE的安全域
  TABLESPACE QUOTAS表空間的使用定額
  DEFAULT TABLESPACE默認表空間
  TEMPORARY TABLESPACE指定臨時表空間
  ACCOUNT LOCKING用戶鎖
  RESOURCE LIMITE資源限制
  DIRECT PRIVILEGES直接授權
  ROLE PRIVILEGES角色授權先將應用中的用戶劃為不同的角色
  二創建用戶時的清單
  選擇一個用戶名稱和檢驗機制A看到用戶名實際操作者是誰業務中角色
  選擇合適的表空間
  決定定額
  口令的選擇
  臨時表空間的選擇先建立一個臨時表空間然後在分配不分配使用SYSTEM表空間
  CREATE USER
  授權A用戶的工作職能
  B用戶的級別
  三用戶的創建
  命令
  CREATE USER 名稱 IDENTIFIED BY 口令 DEFAULT TABLESPACE 默認表空間名 TEMPOARAY
  TABLESPACE 臨時表空間名
  QUOTA M ON 表空間名
  [PASSWORD EXPIRE]當用戶第一次登陸到ORACLE創建時所指定的口令過期失效強迫用戶自己定義一個新口令
  [ACCOUNT LOCK]加用戶鎖
  QUOTA UNLIMITED ON TABLESPACE不限制有多少有多少
  [PROFILE 名稱]受PROFILE文件的限制
  
  四如何控制用戶口令和用戶鎖
  強迫用戶修改口令ALTER USER 名稱 IDENTIFIED BY 新口令 PASSWORD EXPIRE
  給用戶加鎖ALTER USER 名稱 ACCOUNT [LOCK|UNLOCK]
  注意事項
  A所有操作對當前連接無效
  B的操作適用於當用戶忘記口令時
  
  五更改定額
  命令ALTER USER 名稱 QUOTA ON 表空間名
  ALTER USER 名字 QUOTA (數值)K|M|UNLIMITED ON 表空間名
  使用方法
  A控制用戶數據增長
  B當用戶擁有一定的數據而管理員不想讓他在增加新的數據的時候
  C當將用戶定額設為零的時候用戶不能創建新的數據但原有數據仍可訪問
  
  六DROP一個USER
  DROP USER 名稱
  適合於刪除一個新的用戶
  DROP USER 名稱 CASCADE 刪除一個用戶將用戶的表索引等都刪除
  對連接中的用戶不好用
  
  
  七信息獲取
  DBA_USERS:用戶名狀態加鎖日期默認表空間臨時表空間
  DBA_TS_QUOTAS:用戶名表空間名定額
  兩個表的連接字段USERNAME
  GRANT CREATE SESSION TO 用戶名
  
  
  第十三章PROFILE的管理(資源
  文件)
  一PROFILE的管理內容
  CPU的時間
  I/O的使用
  IDLE TIME(空閒時間)
  CONNECT TIME(連接時間)
  並發會話數量
  口令機制
  
  二DEFAULT PROFILE
  所有的用戶創建時都會被指定這個PROFILE
  DEFAULT PROFILE的內容為空無限制
  
  三PROFILE的劃分
  CALL級LIMITE
  對象是語句
  當該語句資源使用溢出時
  A該語句終止
  B事物回退
  CSESSION連接保持
  SESSION級LIMITE
  對象是整個會話過程
  溢出時連接終止
  
  四如何管理一個PROFILE
  CREATE PROFILE
  分配給一個用戶
  象開關一樣打開限制
  
  五如何創建一個PROFILE
  命令CREATE PROFILE 名稱
  LIMIT
  SESSION_PER_USER
  CPU_PER_SESSION
  IDLE_TIME
  CONNECT_TIME
  六限制參數
  SESSION級LIMITE
  CPU_PER_SESSION:定義了每個SESSION占用的CPU的時間/ 秒)
  SESSION_PER_USER:每個用戶的並發連接數
  CONNECT_TIME:一個連接的最長連接時間(分鐘)
  LOGICAL_READS_PER_SESSION: 一次讀寫的邏輯塊的數量
  CALL級LIMITE
  CPU_PER_CALL:每個語句占用的CPU時間
  
  LOGICAL_READS_PER_CALL:
  
  七分配給一個用戶
  CREATE USER 名稱
  PROFILE 名稱
  ALTER USER 名稱 PROFILE 名稱
  
  八打開資源限制
  RESOURCE_LIMT:資源文件中含有
  ALTER SYSTEM SET RESOURCE_LIMIT=TRUE
  默認不打開
  
  九修改PROFIE的內容
  ALTER PROFILE 名稱參數 新值
  對於當前連接修改不生效
  
  
  十DROP一個PROFILE
  DROP PROFILE 名稱
  刪除一個新的尚未分配給用戶的PROFILE
  DROP PROFILE 名稱 CASCADE
  注意事項
  A一旦PROFILE被刪除用戶被自動加載DEFAULT PROFILE
  B對於當前連接無影響
  CDEFAULT PROFILE不可以被刪除
  十一信息獲取
  DBA_USERS:
  用戶名PROFILE
  DBA_PROFILES:
From:http://tw.wingwit.com/Article/program/Oracle/201311/18833.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.