oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作

這篇文章主要介紹“oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作”,在日常操作中,相信很多人在oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

成都創(chuàng)新互聯(lián)服務(wù)項目包括阿爾山網(wǎng)站建設(shè)、阿爾山網(wǎng)站制作、阿爾山網(wǎng)頁制作以及阿爾山網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,阿爾山網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到阿爾山省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

系統(tǒng)簡介

ORACLE數(shù)據(jù)庫系統(tǒng)是美國ORACLE公司(甲骨文)提供的以分布式數(shù)據(jù)庫為核心的一組軟件產(chǎn)品,是目前最流行的客戶/服務(wù)器(CLIENT/SERVER)或B/S體系結(jié)構(gòu)的數(shù)據(jù)庫之一。

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作

如圖所示:
SGA---為數(shù)據(jù)庫提供服務(wù)
PGA---為用戶提供服務(wù)
整個系統(tǒng)主要分為兩大部分:
(一)實例-管理端
內(nèi)存結(jié)構(gòu)---SGA:共享池  數(shù)據(jù)緩沖區(qū)  日志緩沖區(qū)
后臺進(jìn)程---維持與數(shù)據(jù)庫交互
(二)數(shù)據(jù)庫
數(shù)據(jù)文件   控制文件   日志文件

特點

  • 完整的數(shù)據(jù)管理功能

  • 完備關(guān)系的產(chǎn)品

  • 分布式處理功能

  • 用ORACLE能輕松的實現(xiàn)數(shù)據(jù)倉庫的操作

    邏輯結(jié)構(gòu)

    邏輯結(jié)構(gòu)由邏輯存儲結(jié)構(gòu)(表空間,段,范圍,塊)和邏輯數(shù)據(jù)結(jié)構(gòu)(表、視圖、序列、存儲過程、同義詞、索引、簇和數(shù)據(jù)庫鏈等)組成,而其中的模式對象(邏輯數(shù)據(jù)結(jié)構(gòu))和關(guān)系形成了數(shù)據(jù)庫的關(guān)系設(shè)計。

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作

  • 段(Segment):是表空間中一個指定類型的邏輯存儲結(jié)構(gòu),它由一個或多個范圍組成,段將占用并增長存儲空間。

  • 范圍(Extent):是數(shù)據(jù)庫存儲空間分配的邏輯單位,一個范圍由許多連續(xù)的數(shù)據(jù)塊組成,范圍是由段依次分配的。

  • 數(shù)據(jù)塊(Block):是數(shù)據(jù)庫進(jìn)行IO操作的最小單位,oracle數(shù)據(jù)庫是以多個Oracle數(shù)據(jù)庫塊為單位。

表空間

system:系統(tǒng)表空間,存放關(guān)于表空間名稱、控制文件、數(shù)據(jù)文件等管理信息,它屬于sys、system模式。不能刪除或重命名
sysaux:輔助系統(tǒng)表空間,用于減少系統(tǒng)表空間負(fù)荷,提高效率
temp:臨時表空間,存放臨時表和臨時數(shù)據(jù),用于排序
users:用戶表空間,存放永久性用戶對象及私有信息,也成數(shù)據(jù)庫表空間。每個數(shù)據(jù)庫都應(yīng)有一個用戶表空間,創(chuàng)建用戶時分配給用戶
undo:重做表空間,用來幫助回退未提交的事務(wù)數(shù)據(jù)

文件結(jié)構(gòu)

數(shù)據(jù)庫的物理存儲結(jié)構(gòu)是由一些多種物理文件組成,主要有:

  • 控制文件:存儲實例、數(shù)據(jù)文件及日志文件等信息的二進(jìn)制文件。

  • 數(shù)據(jù)文件:存儲數(shù)據(jù),以.dbf做后綴。一句話:一個表空間對多個數(shù)據(jù)文件,一個數(shù)據(jù)文件只對一個表空間。

  • 重做日志文件:用于進(jìn)行數(shù)據(jù)庫的實例恢復(fù)。

  • 日志文件:記錄數(shù)據(jù)庫修改信息。

  • 參數(shù)文件:記錄基本參數(shù)。

  • 口令文件:允許sysdba、sysoper和sysasm遠(yuǎn)程連接到實例并執(zhí)行管理任務(wù)。

  • 歸檔日志文件:使用這些文件好數(shù)據(jù)庫備份,可以恢復(fù)丟失數(shù)據(jù)文件。

  • 警告文件:show parameter background_dump_dest---使用共享服務(wù)器連接

  • 跟蹤文件:show parameter user_dump_dest---使用專用服務(wù)器連接

基本操作

一、數(shù)據(jù)庫開啟、關(guān)閉

//進(jìn)入數(shù)據(jù)庫

su - oracle
sqlplus / as sysdba                    #以最高管理員sysdba登錄
SQL> help index                       #查看命令列表
SQL> show user                      #查看當(dāng)前用戶

//開啟、關(guān)閉數(shù)據(jù)庫(三階段)

SQL>startup                                #開啟:實例--數(shù)據(jù)庫裝載--數(shù)據(jù)庫打開
SQL>shutdown immediate        #關(guān)閉:數(shù)據(jù)庫關(guān)閉--卸載數(shù)據(jù)庫--實例

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作
//啟用、關(guān)閉監(jiān)聽

lnsrctl start
lnsrctl stop

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作

二、創(chuàng)建數(shù)據(jù)庫

dbca
#創(chuàng)建數(shù)據(jù)庫(如果不彈窗口執(zhí)行: export DISPLAY=:0.0)
執(zhí)行成功會跳出創(chuàng)建數(shù)據(jù)庫頁面,按以下步驟操作

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作
接下來等安裝進(jìn)度完成即可!

三、表空間操作

//創(chuàng)建表空間

SQL>create tablespace tbs_work
datafile ‘/orc/app/oracle/oradata/aaa01.dbf’  
size 10M autoextend on;     #支持自動擴(kuò)展

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作
//調(diào)整表空間大小
方法一:修改空間大小

SQL>alter database datafile
'/orc/app/oracle/oradata/aaa01.dbf'
resize 80M;

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作
方法二:添加數(shù)據(jù)文件

SQL>alter tablespace tbs_work
add datafile
'/orc/app/oracle/oradata/aaa02.dbf'
size 40M autoextend on;

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作
//表空間權(quán)限

alter tablespace tbs_work read only;
alter tablespace tbs_work write read;

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作

//刪除表空間

drop tablespaces tbs_work including contents;

四、CDB與PDB操作

//查詢當(dāng)前所在容器

SQL> startup
SQL> show con_name

//查詢數(shù)據(jù)庫所有容器

SQL> show pdbs;

//CDB切換到PDB

SQL> alter pluggable database orclpdb open;   #修改可插拔庫orclpdb打開狀態(tài)
SQL> alter session set container=orclpdb;          #CDB下切換會話到PDB中

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作

//PDB切換到CDB

SQL> shutdown immediate                                  #在PBD中關(guān)閉插拔數(shù)據(jù)庫
SQL> startup                                                          #在PBD中開啟插拔數(shù)據(jù)庫
SQL> alter session set container=cdb$root;      #切換會話到CDB

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作

五、用戶管理

//創(chuàng)建表空間

SQL>create tablespace school
  2  datafile '/orc/app/oracle/oradata/school01.dbf'
  3  size 100M;

//創(chuàng)建用戶(創(chuàng)建好未賦予權(quán)限,所以不能登錄)

SQL> create user c##jack
  2  identified by 123123                 
  3  default tablespace school              #默認(rèn)表空間
  4  temporary tablespace temp            #定義臨時表空間
  5  quota unlimited on school               #不設(shè)定配額
  6  password expire;                             #設(shè)定密碼,下次登錄修改

//更改用戶密碼

SQL> alter user c##jack identified by abc123;

//刪除用戶

SQL> drop user c##jack cascade;

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作
//用戶授權(quán)

SQL> grant connect, resource to c##jerry;    #授予連接和管理數(shù)據(jù)庫權(quán)限
SQL> revoke connect, resource from c##jerry;

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作
//用戶登錄

sqlplus -----c##jerry(用戶名)----123123(密碼)----新密碼---登陸成功

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作
//用戶切換

coon sys/abc123 as sysdba        #切換到sysdba
conn---c##jerry---123123            #切換到c##jerry

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作

六、表的操作

create table info
2  (
3  id number(4) constraint PK_id primary key,   #constraint PK_id:約束-約束名稱
4  name varchar2(10),
5  score number(5,2),
6  born date,          
7  address varchar2(50)
8  );

//查看表結(jié)構(gòu)

desc info;

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作
//插入數(shù)據(jù)

insert into info values(1,'zhangsan',88,to_date('2018-10-9','yyyy-mm-dd'),'nanjing');

//查看表格

select * from info;

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作

七、事務(wù)

  • 事務(wù):在不違反約束的條件下,sql語句要么執(zhí)行成功,要么都不執(zhí)行。
    //事務(wù)提交

    insert into info values(2,'lisi',88,null,null);          #插入數(shù)據(jù)
    commit;                                                                #提交

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作
//事務(wù)回滾

insert into info values(3,'wangwu',77,null,null);     #插入數(shù)據(jù)
rollback;                                                                     #回滾

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作
//設(shè)置自動提交

set autocommit on;          #自動提交,回滾無效
set autocommit off;          #關(guān)閉自動提交

oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作

到此,關(guān)于“oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

分享名稱:oracle數(shù)據(jù)庫的結(jié)構(gòu)及基本操作
URL鏈接:http://muchs.cn/article16/ihgsgg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計公司、網(wǎng)站排名、靜態(tài)網(wǎng)站、網(wǎng)站設(shè)計、App設(shè)計外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站