創(chuàng)新新互聯(lián),憑借10年的網(wǎng)站制作、成都網(wǎng)站建設(shè)經(jīng)驗(yàn),本著真心·誠(chéng)心服務(wù)的企業(yè)理念服務(wù)于成都中小企業(yè)設(shè)計(jì)網(wǎng)站有上1000+案例。做網(wǎng)站建設(shè),選創(chuàng)新互聯(lián)。
以下這些東西是我的麥庫(kù)上存的當(dāng)時(shí)學(xué)Oracle的學(xué)習(xí)筆記今天拿出來(lái)和大家分享一下,轉(zhuǎn)載請(qǐng)注明出處,下面用的Oracle的版本是10g,用的時(shí)WinServer2003的操作系統(tǒng),可能有些命令和Oracle11g的有所不同,但大部分是一樣的,接下來(lái)還會(huì)陸續(xù)的分享一下Oracle中對(duì)用戶(hù)的管理,對(duì)表的管理,還有Oracle中的存儲(chǔ)過(guò)程和PL/SQL編程。用到的Oracle的管理工具是PL/SQL Developerl和SQL PLUS,歡迎大家批評(píng)指正。
1.數(shù)據(jù)庫(kù)管理員的職責(zé):
1.安裝和升級(jí)Oracle數(shù)據(jù)庫(kù)
2.創(chuàng)建數(shù)據(jù)庫(kù),表空間,表,視圖,索引
3.制定并實(shí)施備份和恢復(fù)數(shù)據(jù)庫(kù)計(jì)劃
4.數(shù)據(jù)庫(kù)權(quán)限管理,調(diào)優(yōu),故障排除
5.對(duì)于高級(jí)的dba可以參與項(xiàng)目的開(kāi)發(fā),會(huì)編寫(xiě)sql語(yǔ)句,存儲(chǔ)過(guò)程,觸發(fā)器,規(guī)則,約束,包
2.管理數(shù)據(jù)庫(kù)的主要用戶(hù)主要是sys和system: 例如:sys是董事長(zhǎng),system是總經(jīng)理
1.兩者尊重要的區(qū)別:存儲(chǔ)數(shù)據(jù)的重要性不同。
sys:所有oracle數(shù)據(jù)字典的基表和視圖都存放在sys用戶(hù)中,這些基表和視圖對(duì)oracle的運(yùn)行是至關(guān)重要的
由數(shù)據(jù)庫(kù)自己維護(hù),任何用戶(hù)都不可手動(dòng)更改,sys擁有dba,sysdba,sysoper角色或權(quán)限是oracle權(quán)限的最高用戶(hù)。
system:用于存放次一級(jí)的內(nèi)部數(shù)據(jù),system擁有dba,sysoper角色或權(quán)限
2.第二個(gè)區(qū)別
sys:必須以sysdba 或 sysoper的角色登錄,不能以normal方式登錄
3.對(duì)初始化參數(shù)的修改:
1.顯示初始化參數(shù)
show parameter
2.如何修改參數(shù)
可以到文件oracle\admin\orcl\pfile\init.ora 下修改;
4.數(shù)據(jù)庫(kù)的邏輯備份:
邏輯備份是指使用工具export將數(shù)據(jù)對(duì)象的結(jié)構(gòu)和數(shù)據(jù)導(dǎo)出到文件的過(guò)程。
邏輯回復(fù)是指當(dāng)數(shù)據(jù)庫(kù)被誤操作后利用工具import利用備份的數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫(kù)的過(guò)程。
物理備份即可在數(shù)據(jù)庫(kù)open下操作也可以在關(guān)閉下操作。
但邏輯備份只能在數(shù)據(jù)庫(kù)的open下操作。
數(shù)據(jù)的導(dǎo)出:!!!--在導(dǎo)入導(dǎo)出的時(shí)候要到oracle目錄的bin目錄下執(zhí)行命令;
導(dǎo)出具體的分為:導(dǎo)出表,導(dǎo)出方案,導(dǎo)出數(shù)據(jù)庫(kù)
導(dǎo)出用exp命令來(lái)實(shí)現(xiàn),該命令常用的選項(xiàng)有:
userid:用于指定執(zhí)行導(dǎo)出操作的用戶(hù)名,口令,連接字符串;
tables:用于指定導(dǎo)出操作的表;
owner: 用于指定導(dǎo)出操作的方案;
full=y:用于指定導(dǎo)出的數(shù)據(jù)庫(kù);
inctype:用于指定導(dǎo)出操作的增量類(lèi)型;
rows:執(zhí)行導(dǎo)出操作是否導(dǎo)出表中的數(shù)據(jù);
file:用于指定導(dǎo)出文件名;
1).導(dǎo)出表:導(dǎo)出scott用戶(hù)下數(shù)據(jù)庫(kù)實(shí)例orcl中emp的表,存放的文件路徑為e:/emp.dmp;
在cmd的控制臺(tái)下執(zhí)行:
C:\Documents and Settings\Administrator.WEB-A93B1E61669>exp userid=scott/tiger@orcl tables=(emp,dept) file=e:\emp.dmp;
2)導(dǎo)出其他方案的表
如果要導(dǎo)出其他方案的表則需要dba權(quán)限或者exp_full_database權(quán)限
SQL>userid=system/system@orcl tables=(scott.emp) file=e:\emp1.dmp;
3)導(dǎo)出表的結(jié)構(gòu)沒(méi)有其數(shù)據(jù)
exp userid=scott/tiger@orcl tables=(emp,dept) file=e:\emp.dmp rows=n;
4)直接導(dǎo)出表結(jié)構(gòu)(適合表中有大量的數(shù)據(jù),速度比 rows=n 要快的多)
exp userid=scott/tiger@orcl tables=(emp.dept) file=e:\emp2.dmp direct=y;
2.導(dǎo)出方案:
1)導(dǎo)出scott的方案: exp scott/tiger@orcl owner=scott file=e:\scott.dmp;
C:\Documents and Settings\Administrator.WEB-A93B1E61669>exp userid=scott/tiger@orcl owner=scott file=e:\scott.dmp
2).導(dǎo)出別的方案:如果要導(dǎo)出其他方案的表則需要dba權(quán)限或者exp_full_database權(quán)限
exp userid=system/system@orcl owner=(system,scott) file=e:\syscott.dmp; 導(dǎo)出數(shù)據(jù)庫(kù) inctype=complete;增量備份--第二次備份時(shí)只會(huì)添加新增的數(shù)據(jù)庫(kù)exp userid=system/system@orcl full=y inctype=complete file=e:\orcl.dmp;
5.數(shù)據(jù)庫(kù)的導(dǎo)入:import 將文件中的數(shù)據(jù)導(dǎo)入到數(shù)據(jù)庫(kù)中,但導(dǎo)入的數(shù)據(jù)文件必須是用工具export導(dǎo)出的文件
導(dǎo)入也分導(dǎo)入表,導(dǎo)入方案,導(dǎo)入數(shù)據(jù)庫(kù)三種方式
imp常用的命令有:
userid:用于指定導(dǎo)入操作的用戶(hù)名,口令,連接字符串;
tables:用于執(zhí)行導(dǎo)入表操作
fromuser:用于指定源用戶(hù)
touser:用于指定目標(biāo)用戶(hù)
file:用于指定導(dǎo)入文件名
full=y:用于指定導(dǎo)入整個(gè)文件
inctype:用于指定導(dǎo)入文件的增量類(lèi)型
rows:指定是否要導(dǎo)入表行(數(shù)據(jù))
ignore:如果表存在則只導(dǎo)入表數(shù)據(jù)
--刪除表是同時(shí)會(huì)刪除之前創(chuàng)建的savepoint,所以刪除表是無(wú)法rollback
1.導(dǎo)入該用戶(hù)下的表:
imp userid=scott/tiger@orcl tables=(emp) file=e:\orcl.dmp;
2.導(dǎo)入表到其他用戶(hù)要求DBA權(quán)限或者imp_full_database的權(quán)限;
imp userid=system/system@orcl tables=(emp) file=e:\orcl.dmp touser=scott;
3.只導(dǎo)入表結(jié)構(gòu)而不導(dǎo)入數(shù)據(jù)
imp userid=scott/tiger@orcl tables=(emp) file=e:\orcl.dmp rows=n;
4.如果表已存在則只導(dǎo)入數(shù)據(jù)
imp userid=scott/tiger@orcl tables=(emp) file=e:\orcl.dmp ignore=y;
5.導(dǎo)入自身方案
imp userid=scott/tiger@orcl file=e:\scott.dmp;
6.導(dǎo)入其他方案
imp userid=system/system@orcl file=e:\scott.dmp fromuser=system touser=scott;
7.導(dǎo)入數(shù)據(jù)庫(kù)
imp userid=system/system@orcl full=y file=e:\orcl.dmp;
6.數(shù)據(jù)字典:
數(shù)據(jù)字典記錄了數(shù)據(jù)庫(kù)的系統(tǒng)信息,它是只讀表和視圖的集合,數(shù)據(jù)字典的所有者是sys用戶(hù)
用戶(hù)只能在表上執(zhí)行查詢(xún)操作(select操作),而其維護(hù)和修改是系統(tǒng)自動(dòng)完成的
數(shù)據(jù)字典包括數(shù)據(jù)基表和數(shù)據(jù)視圖,數(shù)據(jù)基表里存儲(chǔ)的是數(shù)據(jù)庫(kù)的基本信息,普通用戶(hù)不能直接訪問(wèn)數(shù)據(jù)庫(kù)基表的信息,數(shù)據(jù)字典里的視圖是基于
基本表創(chuàng)建起來(lái)的虛表,用戶(hù)可以通過(guò)查詢(xún)視圖里的信息來(lái)查詢(xún)系統(tǒng)的信息
數(shù)據(jù)字典里的視圖主要包括user_XXX,all_XXX和dba_XXX三種類(lèi)型;
1.user_tables顯示當(dāng)前用戶(hù)所擁有的表
sql>select table_name from user_tables;
2.all_tables 顯示當(dāng)前用戶(hù)可以訪問(wèn)到的所有表,不僅是該方案下的,也顯示其他方案下的
sql>select table_name from all_tables;
3.dba_tables 顯示所有方案所擁有的表,要求用戶(hù)必須有dba角色或者有select_any_tables的權(quán)限如system用戶(hù)。
sql>select owner,table_name from dba_tables;
4.通過(guò)查詢(xún)dba_users來(lái)顯示數(shù)據(jù)庫(kù)中所有的用戶(hù)(視圖)
sql>select username from dba_users;
5.通過(guò)查詢(xún)dba_sys_privs視圖可以查詢(xún)用戶(hù)所具有的系統(tǒng)權(quán)限
SQL>select * from dba_sys_privs where grantee='SYS'
6.通過(guò)查詢(xún)dba_tab_privs視圖可以查詢(xún)用戶(hù)所具有的對(duì)象權(quán)限
SQL> select * from dba_tab_privs where grantee='SCOTT';
7.通過(guò)查詢(xún)dba_col-Privs視圖可以查詢(xún)用戶(hù)所具有的列權(quán)限
8.通過(guò)查詢(xún)dba_role_privs 視圖可以查詢(xún)用戶(hù)的角色;
SQL> select * from dba_role_privs where grantee='SCOTT'; GRANTEE GRANTED_ROLE ADMIN_OPTION DEFAULT_ROLE------------------------------ ------------------------------ ------------ ------------SCOTT RESOURCE NO YES
9.查詢(xún)Oracle中的所有角色
SQL> select * from dba_roles;
10.查詢(xún)系統(tǒng)權(quán)限
SQL> select * from system_privilege_map;
11.查詢(xún)對(duì)象權(quán)限
SQL> select distinct privilege from dba_tab_privs;
12.查詢(xún)角色擁有的系統(tǒng)權(quán)限
SQL>select * from dba_sys_privs where grantee='CONNECT';
13.查詢(xún)角色擁有的對(duì)象權(quán)限
SQL>select * from dba_tab_privs where grantee='CONNECT';
名稱(chēng)欄目:OracleDBA之?dāng)?shù)據(jù)庫(kù)管理
文章來(lái)源:http://www.rwnh.cn/article40/igehho.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷(xiāo)推廣、小程序開(kāi)發(fā)、網(wǎng)站策劃、電子商務(wù)、Google、面包屑導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)