當前位置:首頁 » 操作系統 » c資料庫oracle資料庫

c資料庫oracle資料庫

發布時間: 2023-06-03 22:41:01

c語言程序連接oracle資料庫高可用報ora03115錯

可以的。
OracleDatabase,又名OracleRDBMS,或簡稱Oracle。是甲骨文公司的一款關系資料庫管理系統。它是在資料庫領域一直處於領先地位的產品。可以說Oracle資料庫系統是世界上流行的關系資料庫管理系統,系統可移植性好、使用方便、功能強,適用於各類大、中、小微機環境。它是一種高效率的、可靠性好的、適應高吞吐量的資料庫方案。
C語言誕生於美國的貝爾實驗室,由丹尼斯·里奇(DennisMacAlistairRitchie)以肯尼斯·藍·湯普森(KennethLaneThompson)設計的B語言為基礎發展而來,在它的主體設計完成後,湯普森和里奇用它完全重寫了UNIX,且隨著UNIX的發展,c語言也得到了不斷的完善。為了利於C語言的全面推廣,許多專家學者和硬體廠商聯合組成了C語言標准委員會,並在之後的1989年,誕生了第一個完備的C標准,簡稱「C89」,也就是「ANSIC」,截至2020年,最新的C語言標准為2018年6月發布的「C18」。

❷ oracle資料庫價格是多少

oracle資料庫一般是按照 版本/CPU數/用戶數等來進行授權的,價格從幾萬到幾十萬不等。

Oracle資料庫最新版本為Oracle Database 19c。Oracle資料庫12c引入了一個新的多承租方架構,使用該架構可輕松部署和管理資料庫雲。

此外,一些創新特性可最大限度地提高資源使用率和靈活性,如Oracle Multitenant可快速整合多個資料庫,而Automatic Data Optimization和Heat Map能以更高的密度壓縮數據和對數據分層。

這些獨一無二的技術進步再加上在可用性、安全性和大數據支持方面的主要增強,使得Oracle資料庫12c成為私有雲和公有雲部署的理想平台。



(2)c資料庫oracle資料庫擴展閱讀:

oracle資料庫的文件結構

資料庫的物理存儲結構是由一些多種物理文件組成,主要有數據文件、控制文件、重做日誌文件、歸檔日誌文件、參數文件、口令文件、警告文件等。

控制文件:存儲實例、數據文件及日誌文件等信息的二進制文件。alter system set control_files=『路徑』。V$CONTROLFILE。

數據文件:存儲數據,以.dbf做後綴。一句話:一個表空間對多個數據文件,一個數據文件只對一個表空間。dba_data_files/v$datafile。


❸ c連接oracle資料庫的連接語句

連接代碼如下:
int main()
{
EXEC sql BEGIN DECLARE SECTION;
char oc_passwd[101]; /*資料庫密碼*/
char oc_userid[101]; /*資料庫用戶名*/
char oc_dbname[101]; /*資料庫名*/
char oc_coad[101];
EXEC SQL END DECLARE SECTION;

memset(oc_passwd, 0x00, sizeof(oc_passwd));
memset(oc_userid, 0x00, sizeof(oc_userid));
memset(oc_dbname, 0x00, sizeof(oc_dbname));

/*取資料庫用戶名*/
strcpy(oc_userid, "userid");

/*取資料庫用戶密碼*/
strcpy(oc_passwd, "passwd") ;

/*取資料庫名*/
strcpy(oc_dbname, "dbname");

EXEC SQL CONNECT :oc_userid
IDENTIFIED BY :oc_passwd
USING :oc_dbname;
if (sqlca.sqlcode != 0)
{
printf("用戶名[%s]密碼[%s]資料庫[%s]\n", oc_userid, oc_passwd, oc_dbname);
printf("連接資料庫失敗,sqlcode=%d\n", sqlca.sqlcode);
return -1;
}
/*讀table取coad欄位*/
memset(oc_coad, 0x00, sizeof(oc_coad));
EXEC SQL SELECT coad
INTO :oc_coad
FROM table
WHERE 1=1;
if (sqlca.sqlcode == NORECORD)
{
printf("查詢無記錄\n");
return -1;
}
else if (sqlca.sqlcode != 0)
{
printf("查詢失敗,sqlcode=%d\n", sqlca.sqlcode);
return -1;
}
return 0;
}

❹ SQLServer和Oracle資料庫分析(oraclesql性能分析)

分析原則:

1、具體問題具體分析(這是由於不同的應用系統,不同的測試目的,不同的性能關注點)

2、查找瓶頸時按以下順序,由易到難。

伺服器硬體瓶頸-〉網路瓶頸(對區域網,可以不考慮)-〉伺服器操作系統瓶頸(參數配置)-〉中間件瓶頸(參數配置,資料庫,web伺服器等)-〉應用瓶頸(SQL語句、資料庫設計、業務邏輯、演算法等)註:以上過程並不是每個分析中都需要的,要根據測試目的和要求來確定分析的深度。對一些要求低的,我們分析到應用系統在將來大的負載壓力(並發用戶數、數據量)下,系統的硬體瓶頸在哪兒就夠了。分段排除法很有效。

分析的信息來源:1、根據場景運行過程中的錯誤提示信息;

2、根據測試結果收集到的監控指標數據。

一、錯誤提示分析

分析實例:

1、Error:「10.10.10.30:8080〃:[10060]Connection

Error::Server「10.10.10.30〃

分析:

A、應用服務死掉(小用戶時:程序上的問題。程序上處理資料庫的問題)

B、應用服務沒有死(應用服務參數設置問題)

例:在許多客戶端連接Weblogic應用伺服器被拒絕,而在伺服器端沒有錯誤顯示,則有可能是Weblogic中的server元素的AeptBacklog屬性值設得過低。如果連接時收到消息,說明應提高該值,每次增加25%

C、資料庫的連接(1、在應用服務的性能參數可能太小了;2、資料庫啟動的最大連接數(跟硬體的內存有關)。)

分析:可能是以下原因造成

A、譽叢應用服務參慶掘櫻數設置太大導致伺服器的瓶頸;B、頁面中圖片太多;C、在程序處理表的時候檢查欄位太大多。

二.監控指標數據分析

1、最大並發用戶數:

應用系統在當前環境(硬體環境、網路環境、軟體環境(參數配置))下能承受的最大並發用戶數。在方案運行中,如果出現了大於3個用戶的業務操作失敗,或出現了伺服器shutdown的情況,則說明在當前環境下,系統承受不了當前並發用戶的負載壓力,那麼最大並發用戶數就是前一個沒有出現這種現象的並發用戶數。如果測得的最大並發用戶數到達了性能要求,且各伺服器資源情況良好,業務操作響應時間也達到了用戶要求,那麼可行。否則,再根據各伺服器的資源情況和業務操作響應時間進一步分析原因所在。

2、業務操作響應時間:

分析方案運行情況應從平均事務響應時間圖和事務性能摘要圖開始。使用「事務性能摘要」圖,可以確定在方案執行期間響應時間過長的事務。細分事務並分析每個頁面組件的性能。如果伺服器耗時過長,請使用相應的伺服器圖確定有問題的伺服器度量並查明伺服器性能下降的原因。如果網路耗時過長,請使用「網路監視器」圖確定導致性能瓶頸的網路問題

3、伺服器資源監控指標:內存:

1、UNIX資源監控中指標內存頁交換速率(Pagingrate),如散衡果該值偶爾走高,表明當時有線程競爭內存。如果持續很高,則內存可能是瓶頸。也可能是內存訪問命中率低。

2、Windows資源監控中,如果Process計數器和ProcessWorkingSet計數器的值在長時間內持續升高,同時Memory計數器的值持續降低,則很可能存在內存泄漏。

內存資源成為系統性能的瓶頸的徵兆:很高的換頁率();進程進入不活動狀態;交換區所有磁碟的活動次數可高;可高的全局系統CPU利用率;內存不夠出錯()。

處理器:

1、UNIX資源監控(Windows操作系統同理)中指標CPU佔用率(),如果該值持續超過95%,表明瓶頸是CPU。可以考慮增加一個處理器或換一個更快的處理器。如果伺服器專用於SQLServer,可接受的最大上限是80-85%合理使用的范圍在60%至70%。

2、Windows資源監控中,如果System大於2,而處理器利用率()一直很低,則存在著處理器阻塞。

CPU資源成為系統性能的瓶頸的徵兆:很慢的響應時間();CPU空閑時間為零();過高的用戶佔用CPU時間();過高的系統佔用CPU時間();長時間的有很長的運行進程隊列()。

磁碟I/O:

1、UNIX資源監控(Windows操作系統同理)中指標磁碟交換率(Diskrate),如果該參數值一直很高,表明I/O有問題。可考慮更換更快的硬碟系統。

2、Windows資源監控中,如果DiskTime和Avg.DiskQueueLength的值很高,而PageReads/sec頁面讀取操作速率很低,則可能存在磁碟瓶徑。

I/O資源成為系統性能的瓶頸的徵兆:過高的磁碟利用率(highdiskutilization);

太長的磁碟等待隊列(largediskqueuelength);

等待磁碟I/O的時間所佔的百分率太高(/O);

太高的物理I/O速率:largephysicalI/Orate(notsufficientinitself);

過低的緩存命中率(lowbuffercachehitratio(notsufficientinitself));

太長的運行進程隊列,但CPU卻空閑(largerunqueuewithidleCPU)。

4、資料庫伺服器:

SQLServer資料庫:

1、SQLServer資源監控中指標緩存點擊率(CacheHitRatio),該值越高越好。如果持續低於80%,應考慮增加內存。

2、如果FullScans/sec(全表掃描/秒)計數器顯示的值比1或2高,則應分析你的查詢以確定是否確實需要全表掃描,以及SQL查詢是否可以被優化。

3、NumberofDeadlocks/sec(死鎖的數量/秒):死鎖對應用程序的可伸縮性非常有害,並且會導致惡劣的用戶體驗。該計數器的值必須為0。

4、LockRequests/sec(鎖請求/秒),通過優化查詢來減少讀取次數,可以減少該計數器的值。

Oracle資料庫:

1、如果自由內存接近於0而且庫快存或數據字典快存的命中率小於0.90,那麼需要增加SHARED_POOL_SIZE的大小。

快存(共享SQL區)和數據字典快存的命中率:select(sum(pins-reloads))/sum(pins)fromv$librarycache;

select(sum(gets-getmisses))/sum(gets)fromv$rowcache;

自由內存:select*fromv$sgastatwherename=『freememory』。

2、如果數據的緩存命中率小於0.90,那麼需要加大DB_BLOCK_BUFFERS參數的值(單位:塊)。

緩沖區高速緩存命中率:selectname,valuefromv$sysstatwherenamein(『dbblockgets』,『consistentgets』『physicalreads』)HitRatio=1-(physicalreads/(dbblockgetsconsistentgets))。

3、如果日誌緩沖區申請的值較大,則應加大LOG_BUFFER參數的值。

日誌緩沖區的申請情況:selectname,valuefromv$sysstatwherename=『redologspacerequests』。

4、如果內存排序命中率小於0.95,則應加大SORT_AREA_SIZE以避免磁碟排序。

內存排序命中率:selectround((100*b.value)/decode((a.valueb.value),0,1,(a.valueb.value)),2)fromv$sysstata,v$sysstatbwherea.name=』sorts(disk)』andb.name=』sorts(memory)』

註:上述SQLServer和Oracle資料庫分析,只是一些簡單、基本的分析,特別是Oracle資料庫的分析和優化,是一門專門的技術,進一步的分析可查相關資料。

❺ Oracle資料庫基本知識

Oracle資料庫基本知識

Oracle Database,又名OracleRDBMS,或簡稱Oracle。是甲骨文公司的一款關系資料庫管理系統。本文為大家分享的是Oracle資料庫的基本知識,希望對大家有所幫助!

它是在資料庫領域一直處於領先地位的產品。可以說Oracle資料庫系統是目前世界上流行的關系資料庫管理系統,系統可移植性好、使用方便、功能強,適用於各類大、中、小、微機環境。它是一種高效率、可靠性好的適應高吞吐量的資料庫解決方案。

介紹

ORACLE資料庫系統是美國ORACLE公司(甲骨文)提供的以分布式資料庫為核心的一組軟體產品,是目前最流行的客戶/伺服器(CLIENT/SERVER)或B/S體系結構的資料庫之一。比如SilverStream就是基於資料庫的一種中間件。ORACLE資料庫是目前世界上使用最為廣泛的資料庫管理系統,作為一個通用的資料庫系統,它具有完整的數據管理功能;作為一個關系資料庫,它是一個完備關系的產品;作為分布式資料庫它實現了分布式處理功能。但它的所有知識,只要在一種機型上學習了ORACLE知識,便能在各種類型的機器上使用它。

Oracle資料庫最新版本為OracleDatabase 12c。Oracle資料庫12c引入了一個新的多承租方架構,使用該架構可輕松部署和管理資料庫雲。此外,一些創新特性可最大限度地提高資源使用率和靈活性,如Oracle Multitenant可快速整合多個資料庫,而Automatic Data Optimization和Heat Map能以更高的密度壓縮數據和對數據分層。這些獨一無二的技術進步再加上在可用性、安全性和大數據支持方面的主要增強,使得Oracle資料庫12c 成為私有雲和公有雲部署的理想平台。

就業前景

從就業與擇業的角度來講,計算機相關專業的大學生從事oracle方面的技術是職業發展中的最佳選擇。

其一、就業面廣:ORACLE幫助拓展技術人員擇業的廣度,全球前100強企業99家都在使用ORACLE相關技術,中國政府機構,大中型企事業單位都能有ORACLE技術的工程師崗位,大學生在校期間興趣廣泛,每個人興趣特長各異,不論你想進入金融行業還是電信行業或者政府機構,ORACLE都能夠在你的職業發展中給你最強有力的支撐,成為你最貼身的金飯碗。

其二、技術層次深:如果期望進入IT服務或者產品公司,Oracle技術能夠幫助提高就業的深度。Oracle技術已經成為全球每個IT公司必選的軟體技術之一,熟練掌握Oracle技術能夠為從業人員帶來技術應用上的優勢,同時為IT技術的深入應用起到非常關鍵的作用。掌握 Oracle技術,是IT從業人員了解全面信息化整體解決方案的基礎。

其三、職業方向多:Oracle資料庫管理方向、Oracle開發及系統架構方向、Oracle數據建模數據倉庫等方向。

Oracle資料庫漏洞分析:無需用戶名和密碼進入你的資料庫

一般性的資料庫漏洞,都是在成功連接或登錄資料庫後實現入侵;本文介紹兩個在2012年暴露的Oracle漏洞,通過這兩種漏洞的結合,可以在不掌握用戶名/密碼的情況下入侵Oracle,從而完成對數據的竊取或者破壞。這兩個漏洞就是CVE-2012-1675和CVE-2012-3137。

引言

國內外很多重要的系統都採用Oracle作為數據存儲的資料庫;在Oracle中存儲著企業或政府大量敏感的信息,在金錢或政治的誘導下,內外部黑客會想法利用管理、網路、主機或資料庫的自身漏洞嘗試入侵到資料庫中,以達到自身的目的。

本文的作者通過對Oracle倆種漏洞的組合研究,設計了一套在不掌握用戶名/密碼的方式入侵到Oracle中;這種方法,比傳統的需要登錄到資料庫中的入侵方法,具有更大的安全隱患和破壞性。

本文希望通過對這兩個漏洞和攻擊方法的介紹,能夠引起相關人員的重視,完善對資料庫安全的措施。

1、概要介紹

本文提供的方法是基於漏洞CVE-2012-1675和CVE-2012-3137對oracle資料庫的攻擊測試的方法。

CVE-2012-1675漏洞是Oracle允許攻擊者在不提供用戶名/密碼的'情況下,向遠程“TNS Listener”組件處理的數據投毒的漏洞。攻擊者可利用此漏洞將資料庫伺服器的合法“TNS Listener”組件中的數據轉向到攻擊者控制的系統,導致控制遠程組件的資料庫實例,造成組件和合法資料庫之間的中間人攻擊、會話劫持或拒絕服務攻擊。

CVE-2012-3137漏洞是Oracle Database 10g/11g身份驗證協議實現中存在一個設計缺陷,攻擊者無需認證即可遠程獲取資料庫用戶密碼哈希相關數據,從而可以離線暴力破解用戶密碼,進一步控制資料庫系統。

我們通過如下的步驟和過程可以實現對Oracle的入侵:

(1)利用CVE-2012-1675進行TNS劫持,在監聽下利用遠程注冊,注冊同名資料庫實例;

(2)新登陸的用戶,在TNS的負載均衡策略下,有可能流量登錄到偽造的監聽服務上;

(3)該監聽服務對用戶的登陸過程進行監控,並將相關數據流量轉發到真實的資料庫上;

(4)利用CVE-2012-3137獲得通訊過程中的認證相關信息;

(5)對認證相關信息進行離線的暴力破解,獲得登陸的密碼;

(6)試用破解的用戶名/密碼登陸Oracle,完成對Oracle中數據的訪問;

2、通過CVE-2012-1675進行TNS劫持

該漏洞存在於Oracle的所有版本,並且Oracle至今僅是發布了警告性通知,並未提供解決方案。

要想利用CVE-2012-1675漏洞做TNS劫持,首先需要了解TNS機制。如下圖所示oracle 通過在本地解析網路服務名到目標主機IP地址,服務埠號,目標資料庫名,把這些信息發送到oracle伺服器端監聽程序,最後再由監聽程序遞送DBMS。

其中關鍵點在於監聽會按照目標資料庫名遞送到名稱正確的資料庫。那麼如果一個監聽下有2個同名資料庫。監聽將自動按照負載均衡把這次訪問發送到負載低的資料庫上,進行連接訪問。資料庫注冊到監聽的方法就決定了,能否同時注冊同名資料庫在同一個監聽下。注冊方式分為本地注冊和遠程注冊,通過修改參數可以調整為遠程注冊。

下面是一段可用的TNS劫持的過程:

1.在劫持機上創建一個和目標資料庫實例同名的資料庫實例。

2.在劫持機上修改 tnsnames.ora 文件

添加

listener_name=

(DESCRIPTION=

(ADDRESS=(PROTOCOL=tcp)(HOST=目標機器IP)(PORT=目標機器埠)))

3.在劫持機上用SQL*Plus 順序執行下面步驟。

1.$ sqlplus / as sysdba

2. SQL> ALTER SYSTEM SETREMOTE_LISTENER='LISTENER_NAME';

3. SQL> ALTER SYSTEM REGISTER;

4.多個客戶端,向資料庫發起登錄。會劫持到一部分客戶端的登錄信息。

最終達到效果如下圖所示:

按照猜想同一個監聽下有2個同名實例。客戶端訪問監聽,監聽按照客戶端中的資料庫名信息分配資料庫,由於監聽下有2個同名資料庫,客戶端鏈接很可能會被分配到劫持者的資料庫實例下,再通過配置劫持者的本地監聽把客戶端請求指回原資料庫。結構圖如下:

測試客戶端鏈接196次。目標資料庫實例獲得113次,劫持資料庫實例獲得83次基本滿足負載均衡的假設。(註上面實例是local server 下面實例是 remote server)

通過以上方式我們可以截獲約一半左右客戶端發送到伺服器的合法鏈接。其中獲得了伺服器IP、埠號、資料庫位置、實例名、登錄用戶名等一系列明文信息和4組密文信息(AUTH_SESSKEY,AUTH_SESSKEY_CLIENT,AUTH_PASSWORD,AUTH_VFR_DATA)。

3、通過CVE-2012-3137進行密碼破解

CVE-2012-3137受影響的資料庫版本有11.2.0.3,11.2.0.2,11.1.0.7,有使用了SHA-1加密演算法的10.2.0.5和10.2.0.4,還有使用了SHA-1的10.2.0.3(運行在z/OS下)版本。

雖然這個漏洞在11.2.0.3中已經解決,但是僅僅資料庫客戶端和伺服器都升級到11.2.0.3並且sqlnet.ora文件中增加SQLNET.ALLOWED_LOGON_VERSION=12才有效。

正如CVE-2012-3137所描述Oracle為了防止第三方通過網路獲取登錄信息包。而對密碼進行了加密處理。本部分只以oracle11.1密碼如何破解為例進行說明。

在發起連接之後(oracle牽手完成),客戶端和伺服器經過協商確定要使用的驗證協議。要完成這個任務,客戶端首先向資料庫發送一個包。包中包含客戶端主要信息和所請求的加密方式。資料庫確認加密方式有效後,發送一個確認服務包如下圖所示:

在通過安全網路服務完成任何所要求的協議之後,資料庫用戶被O3logon(oracle驗證方式) 進行驗證,這個協議執行一個序列來向資料庫證明客戶端擁有密碼。為了避免網路第三方截獲到密碼。首先客戶端發送用戶名到資料庫來表明用戶身份。資料庫端根據加密協議,其中96位的作為資料庫端密鑰,20位的作為偏移量,它對每個連接都是不同的。一個典型的資料庫端發給客戶端的密鑰如下:

AUTH_SESSKEY.....COCDD89FIGODKWASDF……………………

客戶端根據加密演算法向伺服器端發送96位的客戶端密鑰和64位的密碼密鑰。伺服器端計算客戶端傳入的密碼密鑰。如果計算後密碼密文和資料庫中存儲的16位密碼密文一致則驗證通過。

根據這個過程可知上面TNS劫持包中取得的加密信息:AUTH_SESSKEY,AUTH_SESSKEY_CLIENT,AUTH_PASSWORD,AUTH_VFR_DATA這四個值是解密的關鍵。我們把他們按照SHA1,MD5,AES192進行一系列處理。最終通過數據字典碰撞得到密碼明文。

下面這段網上公布的一段示例代碼,這段代碼與筆者的思路不完全相同,但也能大概地說明這個漏洞的攻擊過程:

import hashlib

from Crypto.Cipher import AES

def decrypt(session,salt,password):

pass_hash= hashlib.sha1(password+salt)

key =pass_hash.digest() + 'x00x00x00x00'

decryptor= AES.new(key,AES.MODE_CBC)

plain =decryptor.decrypt(session)

returnplain

session_hex ='6EAAB5422553A7598143E78767'

salt_hex = 'A7193E546377EC56639E'

passwords = ['test','password',''oracle','demo']

for password in passwords:

session_id= decrypt(session_hex.decode('hex'),salt_hex.decode('hex'),password)

print'Decrypted session_id for password "%s" is %s' %(password,session_id.encode('hex'))

ifsession_id[40:] == 'x08x08x08x08x08x08x08x08':

print'PASSWORD IS "%s"' % password

break

4、建議的預防措施

根據以上兩段分析,我們可以有如下的預防措施:

(1)在條件許可的情況下,對Oracle進行補丁升級,對Oracle打cpuoct2012-1515893補丁;注意對於cpuoct2012-1515893補丁要求伺服器端和應用伺服器端同時升級,否則應用系統將無法訪問Oracle;

(2)若無法對Oracle升級,要購買或安裝具備虛擬補丁功能的資料庫安全產品,防止對CVE-2012-3137和CVE-2012-1675的利用;

(3)建立足夠強健的口令,不要使用8位以下密碼,或者字典庫中的口令。

;

❻ ORACLE資料庫是用C語言編寫的嗎

不是,是使用sql與pl/sql語言操作的。

SQL(Structured Query Language)結構化查詢語言,是一種資料庫查詢和程序設計語言,用於存取數據以及查詢、更新和管理關系資料庫系統。同時也是資料庫腳本文件的擴展名。

pl/sql語言是sql語言的擴展,pl/sql中可以嵌入sql語言。
塊是pl/sql的基本單位,編寫pl/sql程序實際是編寫pl/sql塊

❼ 新建Oracle資料庫的3種方法

以下是對新建Oracle資料庫的三種方法進行了詳細的分析介紹 需要的朋友可以過來參考下

通過運行Oracle Database Configuration Assistant 創建 配置 或刪除資料庫(也可在命令行下輸入dbca) 用命令行的方式建立資料庫 通過運行自定義的批處理腳本(或create_ORACLE_SID bat(create_ORACLE_SID sql))來創建 配置 或刪除資料庫

詳述 通過運行Oracle Database Configuration Assistant 創建 配置 或刪除資料庫 建議不熟悉創建過程的DBA使用該方法 只需要根據選項「下一步」進行配置 最後生成資料庫的創建腳本(建議保留) 或者直接創建資料庫 優點 GUI方法使用方便 缺點 不過創建過程有些慢

用命令行的方式建立資料庫

復制代碼 代碼如下: CONNECT / AS SYSDBA STARTUP PFILE= C:oracleadmininit_testorcl ora NOMOUNT; CREATE DATABASE testOrcl DATAFILE /u /oracle/testOrcl/system dbf SIZE M LOGFILE GROUP ( /u /oracle/testOrcl/redo a log /u /oracle/testOrcl/redo b log ) SIZE K GROUP ( /u /oracle/testOrcl/redo a log /u /oracle/testOrcl/redo b log ) SIZE K CHARACTER SET ZHS CGB ;

將資料庫直接從未建置狀態轉換到打開狀態 ALTER DATABASE OPEN;

刪除資料庫(Dropping a Database) SPOOL C:DROP_DATABASE BAT SELECT DEL ||NAME 刪除資料庫相關數據文件 FROM V$DATAFILE; SELECT DEL ||MEMBER 刪除數據重構日誌文件 FROM V$LOGFILE; SPOOL OFF;

優點 可以熟悉創建指令 創建原理 缺點 配置簡單 要求熟記命令行指令 通過運行自定義的批處理或SQL腳本(create_ORACLE_SID bat或create_ORACLE_SID sql)來創建

復制代碼 代碼如下: create_ORACLE_SID bat set ORACLE_SID= ORACLE_SID del C:ORACLE IdatabasepwdORACLE_SID ora C:ORACLE Ibinoradim new sid ORACLE_SID intpwd oracle startmode manual pfile C:ORACLE IadminORACLE_SIDpfileinit ora C:ORACLE Ibinsvrmgrl @C:_SIDrun sql C:ORACLE Ibinsvrmgrl @C:_SIDrun sql C:ORACLE Ibinoradim edit sid ORACLE_SID startmode auto ORACLE_SIDrun sql spool C:ORACLE IadminORACLE_SIDcreatecreatedb set echo on connect INTERNAL/oracle startup nomount pfile=C:ORACLE IadminORACLE_SIDpfileinit ora CREATE DATABASE ORACLE_SID LOGFILE C:ORACLE IoradataORACLE_SIDredo log SIZE K C:ORACLE IoradataORACLE_SIDredo log SIZE K MAXLOGFILES MAXLOGMEMBERS MAXLOGHISTORY DATAFILE C:ORACLE IoradataORACLE_SIDsystem dbf SIZE M REUSE MAXDATAFILES MAXINSTANCES CHARACTER SET ZHT BIG NATIONAL CHARACTER SET ZHT BIG ; spool off ORACLE_SIDrun sql spool C:ORACLE IadminORACLE_SIDcreatecreatedb set echo on connect INTERNAL/oracle ALTER DATABASE DATAFILE C:ORACLE IoradataORACLE_SIDsystem dbf AUTOEXTEND ON; CREATE ROLLBACK SEGMENT SYSROL TABLESPACE "SYSTEM" STORAGE (INITIAL K NEXT K); ALTER ROLLBACK SEGMENT "SYSROL" ONLINE;

Linux平台下Oracle的操作

下面對Oracle的操作都是在Linux平台下進行的! su Oracle sqlplus /logon connect test/test assysdba(test/test是Oracle用戶和密碼) startup lsnrctl 首選啟動資料庫 su Oracle sqlplus /nolog conn /as sysdba startup 然後啟動監聽: 進入/opt/Oracle/proct/ /bin/ lsnrctl start 運行shudown命令關閉資料庫 [Oracle@wing /Oracle]$ sqlplus" / as sysdba" //以sysdba用戶登陸資料庫 SQL> shutdown

啟動Oracle i 資料庫 [Oracle@wing bin]$ sqlplus " /as sysdba" SQL> startup

啟動Oracle i監聽程序 Oracle的監聽程序主要是為客戶端的連接提供介面 [Oracle@wing bin]$ lsnrctl LSNRCTL> start

關閉Oracle i監聽程序 [Oracle@wing bin]$ lsnrctl LSNRCTL> stop 先看看Oracle_SID 環境變數設置是否正確 i $ sqlplus /nolog SQL> connect / as sysdba SQL> startup $ lsnrctl start i $ svrmgrl SVRMGR> connect internal SVRMGR> startup $ lsnrctl start 在哪裡報錯?? 一般只要設置這 處就好了~ /etc/oratab ora :/Oracle/app/Oracle/proct/ :Y /etc/inittab oralce: :wait:/bin/su Oracle c /Oracle/app/Oracle/proct/ /bin/lsnrctl start Oracle: :wait:/bin/su Oracle c /Oracle/app/Oracle/proct/ /bin/dbstart

啟動步驟 su Oracle [Oracle@websvr Oracle]$ sqlplus /nolog SQL> connect / as sysdba SQL> startup SQL> quit [Oracle@websvr Oracle]$ lsnrctl start 可用 [Oracle@websvr Oracle]$ lsnrctl status 查看監聽是否已經啟動

lishixin/Article/program/Oracle/201311/19064

熱點內容
安卓怎麼去掉背景圖 發布:2024-06-22 02:13:05 瀏覽:928
貪心演算法找零錢 發布:2024-06-22 02:08:43 瀏覽:224
按鍵精靈腳本收費 發布:2024-06-22 01:58:46 瀏覽:293
安卓如何用otg 發布:2024-06-22 01:49:11 瀏覽:911
扇貝編程下載 發布:2024-06-22 01:49:06 瀏覽:507
如何攻克系統密碼 發布:2024-06-22 01:48:31 瀏覽:685
華為存儲待遇 發布:2024-06-22 01:40:39 瀏覽:305
matlab讀取文件夾中的所有 發布:2024-06-22 01:40:37 瀏覽:629
戴爾架式伺服器能當電腦用嗎 發布:2024-06-22 01:05:16 瀏覽:517
linux掛載與卸載 發布:2024-06-22 00:54:57 瀏覽:901