mysql與oracle有區(qū)別嗎

mysqloracle有區(qū)別:1、Oracle是一個對象關系數(shù)據(jù)庫管理系統(tǒng)(ORDBMS),而MySQL是一個關系數(shù)據(jù)庫管理系統(tǒng)(RDBMS);2、Oracle是閉源的(收費),MySQL是開源的(免費);3、Oracle是大型數(shù)據(jù)庫,而MySQL是中小型數(shù)據(jù)庫;4、Oracle可設置用戶權限、訪問權限、讀寫權限等,而MySQL不行;5、Oracle有表空間,MySQL沒有。

mysql與oracle有區(qū)別嗎

本教程操作環(huán)境:windows7系統(tǒng)、mysql8&&Oracle12c版本、Dell G3電腦。

MySQL和Oracle都是流行的關系數(shù)據(jù)庫管理系統(tǒng)(RDBMS),在世界各地廣泛使用;大多數(shù)數(shù)據(jù)庫以類似的方式工作,但MySQL和Oracle的這里和那里總是存在一些差異的。

mysql與oracle的具體區(qū)別

1、本質的區(qū)別

Oracle數(shù)據(jù)庫是一個對象關系數(shù)據(jù)庫管理系統(tǒng)(ORDBMS)。它通常被稱為Oracle RDBMS或簡稱為Oracle,是一個收費的數(shù)據(jù)庫。

MySQL是一個開源的關系數(shù)據(jù)庫管理系統(tǒng)(RDBMS)。它是世界上使用最多的RDBMS,作為服務器運行,提供對多個數(shù)據(jù)庫的多用戶訪問。它是一個開源、免費的數(shù)據(jù)庫。

2、Oracle數(shù)據(jù)庫產品是閉源同時也是收費的,MySQL是開源的項目(免費);

3、Oracle是大型數(shù)據(jù)庫,Mysql是中小型數(shù)據(jù)庫;

4、Oracle可以設置用戶權限、訪問權限、讀寫權限等,MySQL沒有;

5、Oracle有表空間的概念,MySQL沒有;

6、Oracle默認不自動提交,需要用戶手動提交。Mysql默認是自動提交。

7、Oracle邏輯備份時不鎖定數(shù)據(jù),且備份的數(shù)據(jù)是一致的。Mysql邏輯備份時要鎖定數(shù)據(jù),才能保證備份的數(shù)據(jù)是一致的,影響業(yè)務正常使用。

8、Oracle有各種成熟的性能診斷調優(yōu)工具,能實現(xiàn)很多自動分析、診斷功能。比如awr、addm、sqltrace、tkproof等;Mysql的診斷調優(yōu)方法較少,主要有慢查詢日志。

9、Oracle容量無限,根據(jù)配置決定;而MySQL使用MyISAM存儲引擎,最大表尺寸為65536TB。 MySQL數(shù)據(jù)庫的最大有效表尺寸通常是由操作系統(tǒng)對文件大小的限制決定的,而不是由MySQL內部限制決定。

10、Oracle在linux下的性能,在少量數(shù)據(jù)時速度低于MySQL,在千萬級時速度快于MySQL。

11、Oracle全面,完整,穩(wěn)定,但一般數(shù)據(jù)量大,對硬件要求較高 ;而MySQL使用CPU和內存極少,性能很高,但擴展性較差。

12、MySQL處理翻頁的SQL語句比較簡單,用LIMIT 開始位置, 記錄個數(shù)。Oracle處理翻頁的SQL語句就比較繁瑣了。每個結果集只有一個ROWNUM字段標明它的位置, 并且只能用ROWNUM80。

13、MySQL日期字段分date和TIME兩種,Oracle日期字段只有DATE,包含年月日時分秒信息,用當前數(shù)據(jù)庫的系統(tǒng)時間為SYSDATE, 精確到秒。

14、SQL語句的區(qū)別:

  • mysql可以沒有from,oracle必須有,可以寫成from dual;

  • mysql使用concat()函數(shù)連接字符串,oracle不僅有concat()函數(shù),還可以使用||;

  • mysql沒有全外連接,使用集合連接代替,oracle有全外連接,而且左右外連接有自己的語法:(+);

  • mysql分頁使用limit,oracle分頁得借助rownum關鍵字;

  • mysql自動增長auto_increment,oracle使用序列代替;

  • mysql直接書寫循環(huán)判斷語句,oracle得借助PLSQL語句;

  • mysql判斷使用elseif,oracle使用elsif;

  • mysql可以直接增刪改,oracle需要commit;

  • group by,在下oracle下用group by的話,group by后面的字段必須在select后面出現(xiàn),不然會報錯的,而mysql卻不會;

【相關推薦:mysql視頻教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊5 分享