2010-08-22 64 views
3

我以前用的是mysql,而且在mysql數據庫中保存表,但這些概念並不適用於oracle,所以我不太瞭解它們之間的差異。解釋「創建數據庫」時Oracle和Mysql有什麼區別?

更新:我面臨的問題是,我需要從Mysql遷移到Oracle。 我有兩個名爲A和B的交換數據庫,在Mysql中,所有的表都在它們對應的數據庫中。 在mysql數據庫中是一個邏輯概念,它使用數據庫來存放表,在oracle數據庫中是物理的概念,我不知道如何在oracle中設計這個。 我是否需要使用「CREATE DATABASE」在oracle中創建兩個數據庫才能達到相同的效果?

+1

我想你會發現Oracle確實有'表'的概念。也許你可以更具體地說明你遇到的困難? – 2010-08-22 09:58:55

+1

我相信相當於Oracle的概念是* schema * ... – 2010-08-22 20:56:36

回答

4

要回答你的問題,你想創建一個模式(CREATE USER)而不是實例/數據庫(CREATE DATABASE)。

數據庫的Oracle定義是磁盤上的文件。這些可以在實例之間共享(Real Application Clusters),也可以僅由單個實例使用(例如,在同一臺服務器上,最常用)。

背景:數據庫供應商之間的「數據庫」概念不同。作爲Oracle DBA,當與來自MySQL,DB2,SQL Server後臺的人交談時,我非常小心,他們在Oracle中稱之爲「數據庫」的是用戶/模式(用戶和模式之間的區別是模式包含表和一個用戶只是一個登錄)。每當有人,特別是開發人員,在什麼情況下使用「數據庫」這個詞的問題。

2

Oracle的SQL Developer文檔有一章將MySQL與Oracle進行比較。 Find it here。這是因爲SQL Dev包含the Migration Workbench which supports migrating MySQL to Oracl e。您可能要考慮在您的努力中使用該工具。這是免費的。

無論如何,文檔有this answer to your specific question

「當遷移MySQL數據庫到 甲骨文,SQL開發每個MySQL的 數據庫映射到Oracle表空間 數據庫對象,如表, 索引和視圖存儲在 各自的表空間中,並且 從Oracle架構引用爲 擁有它們的用戶。「

相關問題