玩轉oracle學習第一天

2021-07-02 15:43:36 字數 4013 閱讀 5476

oracle學習第一部分

1.oracle簡介

1.1 目前常用資料庫分類

小型資料庫:sql server,access(微軟的)

中型資料庫:mysql(瑞典公司的),sybase(美國sybase公司)

大型資料庫:informix(ibm),oracle(甲骨文公司),db2(ibm)

1.2 oracle資料庫介紹

oracle資料庫是由美國甲骨文公司的產品,公司從2023年起開始開發資料庫,目前資料庫已經發展到oracle 11g,比較流行的是oracle 9i和oracle 10g,oracle單詞的意思是神喻,代神說話的人,甲骨文

1.3 oracle資料庫資質認證

a. oca    oracle低階認證

b. ocp oracle中級認證

c. ocm oracle高階認證(很難考,報名費很貴,2000美金左右,中國大陸還不一定有考區)

2. oracle資料庫的安裝

2. 預設使用者

oracle資料庫安裝以後,會預設有三個使用者

dba使用者:資料庫管理員,擁有資料庫最高許可權,其可以create database許可權,也可以稱為超級使用者,sysdba角色,使用者密碼分別如下:

sys/change_on_install

sysoper使用者:資料庫使用者管理員,許可權也很大,但是沒有create database的許可權,使用者密碼分別如下:

system/manager

scott使用者:普通使用者,oracle會給其預設產生一些資料物件,使用者密碼分別是:

scott/tiger

注:一般的,對資料庫的維護和操作,使用system使用者就可以了

3.oracle資料的啟動

a.啟動資料庫例項

b.啟動資料庫監聽

4.連線資料庫

a.sqlplus可以連線

b.pl/sql可以連線

...5.常用命令

a.常用系統命令:

(1)顯示當前使用者:show user;

(2)連線資料庫:    conn(connect)  使用者名稱/密碼;

(3)修改密碼:passw(password) 使用者名稱;

(4) 檢視當前使用者下面有哪些表:

select table_name from user_tables;

(5)設定環境變數

設定行寬:set pagesize = 120;

設定頁面大小:set pagesize = 8;//一頁顯示8條資料,包括最後乙個空白行

b.檔案互動命令

(1) 互動式命令:&

可以替代變數,而該變數在執行時,需要使用者輸入

select * from emp where job=『&job』;

(2)執行指令碼命令:start 或者@

@ d:\my.sql;

start d:\my.sql;

(3)修改sql指令碼命令:edit

edit d:\my.sql;   //開啟指令碼檔案,然後使用者就可以修改了

(4)重定向: spool,將命令列的輸出重定向輸出到檔案中,需要兩步操作

spool   filename;//建立新檔案filename

spool off; //輸出到檔案中

c.操作使用者語句

(1) oracle使用者建立:只有sys或者system使用者有許可權建立使用者

create user liudh identified by m123; //建立使用者liudh,密碼為m123,注意:oracle資料庫中密碼必須以字母開頭

(2)修改密碼

password  使用者名稱;

(3) 刪除使用者,一般是級聯刪除

drop user 使用者名稱 cascade;

d.授權操作,資料庫管理員才有的許可權,新建使用者預設表空間是system空間

(1)grant connect to liudh;//給使用者liudh授予connect角色的許可權,connect是乙個角色,這個角色有一些7種許可權,比如連線資料庫等

(2)檢視表結構

desc tablename;

(3)授權訪問其他使用者的表許可權

grant select on emp to liudh;//emp表是scott使用者的,執行該操作以後,liudh使用者就可以查詢(select)scott使用者下的表emp

grant update on emp to liudh;

使用all可以授予多個物件許可權,包括的物件許可權有:select,update,delete,create

grant all on emp to liudhu;

(4) 操作其他使用者的表,要帶上使用者名稱

liudh使用者想要查詢scott使用者的emp表,在授予許可權的情況下,可通過如下語句來實現:

select * from scott.emp;

(5)許可權資源**:invoke

revoke select on emp from liudh;//scott使用者取消liudhy使用者對自己的表emp的select物件許可權

注意:許可權的**是級聯的

scott 將select 表emp的許可權傳遞授予liudh,liudh將對scott表emp的select物件許可權授予zhangxy,當scott**liudh該許可權時,zhangxy的許可權也被收回了

,即許可權的收回是級聯的

(6)許可權的傳遞,許可權的維護 使用with grant option 和 with admin option

scott使用者把對自己的表emp的select物件許可權授予liudh,同時也希望liudh使用者把對emp表的select物件許可權授予其他人,比如zhangxy,語句如下

物件許可權的傳遞:

grant select on emp to liudh with grant option;

系統許可權的傳遞:

grant connect to liudh with admin option;//資料庫管理員將connect系統許可權授予liudh,而後liudh就可以將connect系統許可權授予其他普通使用者

6.oracle使用者管理

oracle安裝缺省會產生三個使用者,也會產生乙個資料庫例項,該例項下面可以增加其他使用者,然後使用者就可以在該例項下建資料物件,是共享表空間的,

每個使用者在這個例項下面有自己可以操作的表,不同使用者自己專有的表資料物件名可以相同,每個使用者都有自己的許可權,其中許可權分為系統許可權和物件許可權(對資料

物件操作的許可權)

資料物件包括:表,儲存過程,檢視,函式,序列,觸發器,角色,表空間,工作,包等

7.oracle使用者口令管理

通過建立profile檔案來實現,profile是口令限制,資源限制的命令的集合

(1)賬戶鎖定

建立profile規則aaa:使用者輸錯三次密碼,賬戶鎖定兩天

create profile aaa limit  faild_login_attempts 3 password_lock_time 2;

將鎖定規則aaa給使用者liudh

alter user liudh profile aaa;//注:此處的profile是乙個關鍵字

(2)賬戶解鎖:(只有dba有許可權)

alter user  liudh  account unlock;

(3)  終止口令:

強制讓使用者每隔10天修改一次密碼,期限為2天

create profile bbb limit password_life_time 10 password_grace_time 2;

將規則bbb授予使用者liudh

alter user liudh profile bbb;

(4)口令歷史:

如果使用者修改密碼,不能和前一次一樣,10天之後才可以修改為相同的

create profile passwordtime limit password_life_time 10 password_grace_time 2 password_reuse_time 10;

刪除profile規則,一般是級聯刪除

drop profile passwordtime cascade;//級聯刪除

Oracle學習第一天

兩個壓縮包解壓到同一資料夾下 win7系統以管理員方式開啟 解除安裝 oracle目錄下面找到deinstall資料夾,deinstall.bat檔案 系統使用者 sys system 許可權 sys system sys只有系統操作權許可權使用者才能登陸,system可直接登陸 密碼自己設定 sy...

oracle 學習筆記(第一天)

一直都沒有系統的去學習oracle,現在有時間就開始看oracle的資料並且整理出來,有時間會繼續更新下去 oracle 入門 1.oracle 資料庫的主要特點 支援多使用者,大事務量的事務處理 資料安全性,完整性控制 支援分布式資料處理 可移植性 2.oracle伺服器是由oracle資料庫和o...

學習第一天

知識是學會的,不是教會的 程式設計 驗證性或體驗性 創造性 學程式設計的4個階段 1.能看懂別人的 除錯別人的 2.能修改別人的 3.能拷貝別人的 做自己的事 4.能自己設計編寫 方法 多讀 做記錄 執行 修改 執行 練習,光說不練假把式 刷oj總結 寫部落格或許是個不錯的選擇 學生和已經工作的程式...