Firebird (数据库)

关系数据库系统
(重定向自Firebird (數據庫)

Firebird,是一个跨平台的关系数据库系统,目前能够运行在Windowslinux和各种Unix操作系统上,源于Borland公司的InterBase 6.0,是一个完全非商业化的产品,但源代码经过大规模重写,使用C++开发。

Firebird
開發者Firebird專案
首次发布2000年 (2000)
当前版本
  • 5.0.1(2024年8月2日;穩定版本)[1]
編輯維基數據鏈接
源代码库 編輯維基數據鏈接
编程语言C++, C
操作系统跨平台
平台IA-32, x86-64, FreeBSD
类型關聯式資料庫管理系統
许可协议IPL, IDPL
网站www.firebirdsql.org/ 编辑维基数据

特色

支援多版本並行控制(Multiversion Concurrency Control,MVCC)、預存程序(Stored Procedure)、觸發程序(Trigger)、自定義方法英语User-defined function(User-defined function,專有名詞縮寫UDF)等商用資料庫行為程序。同時因為與interbase的血緣關係,部分interbase的GUI工具可以直接應用到Firebird開發中。

版本區分

Firebird提供三個伺服器環境版本,分別是超級伺服器版本(SuperServer)、標準伺服器版本(ClassicServer)與嵌入式版本(Embedded):

超級伺服器版本(SuperServer)
支援多執行緒(Multithreading)模式,可以以背景Service模式執行。
標準伺服器版本(ClassicServer)
支援每個執行緒可以個別管理自己的資料庫,允許資料庫與伺服器不是儲存在同一台情境,適合用於多處理器環境。
嵌入式版本(Embedded)
針對嵌入式系統要求獨占程序設計版本,允許資料庫與伺服器在同一台運行情境。

歷史

Firebird 1.0

2002年3月11日公開,初期支援Linux、Windows、Mac OS X版本,兩個月後公開Solaris、FreeBSD、HP-UX移植版本,以C語言為中心開發。

Firebird 1.0 發行歷史
版本 發布日期 重要改进
1.0 2002年3月11日
1.0.1 2002年7月1日
1.0.2 2002年12月19日
1.0.3 2003年6月3日

Firebird 1.5

2004年2月23日公開,自此版本開始變更為C++為中心開發。支援SQL92陳述句(SQL-92)標準函式、SQL1999陳述句(SQL1999英语SQL:1999)的SAVEPOINT函式與明確鎖定(explicit locking)[2]等。

Firebird 1.5 發行歷史
版本 發布日期 重要改进
1.5 2004年2月23日
1.5.1 2004年7月14日
1.5.2 2004年12月26日
1.5.3 2006年1月24日
1.5.4 2007年2月8日
1.5.5 2007年12月12日
1.5.6 2009年10月8日

Firebird 2.0

2006年11月12日公開,支援SQL2003陳述句(SQL2003英语SQL:2003)的MERGE函式。更新版本2.1開始支援64位元Windows環境[3][4]觸發式(Trigger)等。

Firebird 2.0 發行歷史
版本 發布日期 重要改进
2.0 2006年11月12日
2.0.1 2007年3月21日
2.0.2 2007年8月27日
2.0.3 2007年9月21日
2.0.4 2008年4月28日
2.0.5 2009年1月27日
2.0.6 2010年7月22日
2.0.7 2012年5月13日

Firebird 2.1

2008年4月18日公開。

Firebird 2.1 發行歷史
版本 發布日期 重要改进
2.1 2008年4月18日
2.1.1 2008年7月16日
2.1.2 2009年4月1日
2.1.3 2009年9月8日
2.1.4 2011年3月15日
2.1.5 2012年6月23日
2.1.6 2014年7月26日
2.1.7 2014年12月5日

Firebird 2.5

2010年10月4日公開。支援正規表示式(Regular Expression,專有名詞縮寫RE)[5]等。

Firebird 2.5 發行歷史
版本 發布日期 重要改进
2.5 2010年10月4日
2.5.1 2011年10月4日
2.5.2 2012年11月6日
2.5.3 2014年7月17日
2.5.4 2015年3月30日
2.5.5 2015年11月18日
2.5.6 2016年7月14日
2.5.7 2017年2月17日
2.5.8 2018年7月15日
2.5.9 2019年6月24日

Firebird 3.0

2016年4月19日公開。支援布林值(BOOLEAN)與自動遞增數值(IDENTITY)儲存規格。允許使用IPv6網際協定連線資料庫等。更新版本3.0.2起開始支援Android環境。

自該版本起不再提供Firebird 3.0之前舊版本資料庫相容(On Disk Structure,專有名詞縮寫ODS)[6]

舊版本 最新版本 未來版本
Firebird 3.0 發行歷史
版本 發布日期 重要改进
3.0 Beta 1 2014年12月2日
  • 官方版Firebird 3.0 Beta 1釋出[7]
3.0 Beta 2 2015年7月3日
  • 官方版Firebird 3.0 Beta 2釋出[8]
3.0 RC1 2015年11月9日
  • 官方版Firebird 3.0 RC 1釋出[9]
3.0 RC2 2016年3月3日
  • 官方版Firebird 3.0 RC 2釋出[10]
3.0 2016年4月19日
  • 官方版Firebird 3.0釋出[11]
3.0.1 2016年9月27日
3.0.2 2017年3月22日
  • 穩定性更新[13]
  • 支援 Android 32位元版本
3.0.3 2018年2月2日
3.0.4 2018年10月14日
3.0.5 2020年1月12日
3.0.6 2020年6月26日
3.0.7 2020年10月20日
3.0.8 2021年11月17日
  • 穩定性更新[19]
  • 支援 Android 64位元版本
3.0.9 2022年2月15日
3.0.10 2022年6月8日
  • 穩定性更新[21]
  • 最後一個版本支援Mac OS X 32位元版本
3.0.11 2023年8月4日

Firebird 4.0

2021年6月1日公開。支援128位元整數(INT128)儲存規格。上修浮動十進制(DECFLOAT)與十進制整數(DECIMAL)儲存精度規格等。

舊版本 最新版本 未來版本
Firebird 4.0 發行歷史
版本 發布日期 重要改进
4.0 Beta 1 2019年2月20日
  • 官方版Firebird 4.0 Beta 1釋出[23]
4.0 Beta 2 2020年5月14日
  • 官方版Firebird 4.0 Beta 2釋出[24]
4.0 RC1 2021年2月1日
  • 官方版Firebird 4.0 RC1釋出[25]
4.0 2021年6月1日
  • 官方版Firebird 4.0釋出[26]
4.0.1 2021年12月22日
  • 穩定性更新[27]
  • 新增PKCS 1.5 支援
4.0.2 2022年8月11日
4.0.3 2023年8月4日
4.0.4 2023年11月8日

Firebird 5.0

2024年1月11日公開。

舊版本 最新版本 未來版本
Firebird 5.0 發行歷史
版本 發布日期 重要改进
5.0 Beta 1 2023年3月27日
  • 官方版Firebird 5.0 Beta 1釋出[31]
5.0 RC1 2023年9月29日
  • 官方版Firebird 5.0 RC1釋出[32]
5.0 RC2 2023年12月18日
  • 官方版Firebird 5.0 RC2釋出[33]
5.0 2024年1月11日
  • 新增分析PSQL語法執行效能PSQL profiler語法

判斷資料庫所執行引擎版本

  • Windows

執行command應用程式,然後執行下列查詢:

gstat [switches] database_name

例如安裝Firebird位於Program Files英语Program Files,資料庫檔案test.fdb位於分割區C,則執行下列查詢:

C:\PROGRA~1\Firebird\Firebird_5_0>gstat -h c:\test.fdb

Command應用程式將會回傳以下訊息:

Database "c:\test.fdb"
Gstat execution time Wed Jun 19 19:02:46 2024

Database header page information:
Flags                   0
Generation              33
System Change Number    0
Page size               8192
ODS version             13.1
Oldest transaction      24
Oldest active           25
Oldest snapshot         25
Next transaction        26
Sequence number         0
Next attachment ID      5
Implementation          HW=AMD/Intel/x64 little-endian OS=Windows CC=MSVC
Shadow count            0
Page buffers            0
Next header page        0
Database dialect        3
Creation date           Jan 11, 2024 11:07:27
Attributes              force write

Variable header data:
Database GUID:  {2193572f-c8d2-404e-b779-08671a1309dd}
*END*

Gstat completion time Wed Jun 19 19:02:46 2024

回傳訊息當中的ODS version即為資料庫所執行引擎版本。

  • Linux

執行Tux應用程式,然後執行下列查詢:

gstat database_name  [switches]

例如安裝Firebird位於bin,資料庫檔案test.fdb位於根目錄,則執行下列查詢:

gstat test -h

Tux應用程式將會回傳以下訊息:

Database "/test.fdb"
Database header page information:

Flags              0
Checksum           0
Greeration         0
page size          0
ODS version        11.2
Oldest transection 0
Oldest actuive     0
Oldest snapshot    0
Next transection   0
Bumped transection 0
Sequence number    0
Next attachent ID  0
Implentation ID    0
Shadow count       0
Pager buffers      0
Next header page   0
Database diaect    0
Creation date      Jan 1, 2024 00:00:00
Attributes         force write

Variable header data:
Sweep interval: 0
*END*

回傳訊息當中的ODS version即為資料庫所執行引擎版本。

GUI工具

 
GUI工具Turbobird

参考文献

  1. ^ Firebird 5.0.1. 2024年8月2日 [2024年8月4日]. 
  2. ^ Firebird 1.5.5 Release Notes. [29 September 2009]. (原始内容存档于2015-09-24).  Firebird 1.5.5 General Notes for rewriting it from C to C++ language
  3. ^ Releases Firebird-win64.页面存档备份,存于互联网档案馆) Sourceforge.net; abgerufen am 3. Mai 2011.
  4. ^ Releases Firebird-linux-amd64.页面存档备份,存于互联网档案馆) Sourceforge.net; 3. May 2011.
  5. ^ Helen Borrie. Firebird 2.1 Release Notes. 20 July 2014 [20 July 2014]. (原始内容存档于2017-04-22). 
  6. ^ Fast conversion of Firebird 2.5 databases to Firebird 3.0 (英语). 
  7. ^ Firebird 3.0 Beta 1 is available (英语). 
  8. ^ Firebird 3.0 Beta 2 is available (英语). 
  9. ^ Firebird 3.0 Release Candidate 1 is available for testing (英语). 
  10. ^ Firebird 3.0 Release Candidate 2 is available for testing (英语). 
  11. ^ Firebird 3.0 is released (英语). 
  12. ^ Firebird 3.0.1 Release: Bug Fixes (英语). 
  13. ^ Firebird 3.0.2 Release: Bug Fixes (英语). 
  14. ^ Firebird 3.0.3 Release: Bug Fixes (英语). 
  15. ^ Firebird 3.0.4 Release: Bug Fixes (英语). 
  16. ^ Firebird 3.0.5 Release: Bug Fixes (英语). 
  17. ^ Firebird 3.0.6 Release: Bug Fixes (英语). 
  18. ^ Firebird 3.0.7 Release: Bug Fixes (英语). 
  19. ^ Firebird 3.0.8 Release: Bug Fixes (英语). 
  20. ^ Firebird 3.0.9 Release: Bug Fixes (英语). 
  21. ^ Firebird 3.0.10 Release: Bug Fixes (英语). 
  22. ^ Firebird 3.0.11 Release: Bug Fixes (英语). 
  23. ^ Firebird 4.0 Beta 1 release is available for testing (英语). 
  24. ^ Firebird 4.0 Beta 2 release is available for testing (英语). 
  25. ^ Firebird 4.0 Release Candidate 1 is available for testing (英语). 
  26. ^ Firebird 4.0 is released (英语). 
  27. ^ Firebird 4.0.1 Release: Bug Fixes (英语). 
  28. ^ Firebird 4.0.2 Release: Bug Fixes (英语). 
  29. ^ Firebird 4.0.3 Release: Bug Fixes (英语). 
  30. ^ Firebird 4.0.4 Release: Bug Fixes (英语). 
  31. ^ Firebird 5.0 Beta 1 release is available for testing (英语). 
  32. ^ Firebird 5.0 Release Candidate 1 is available for testing (英语). 
  33. ^ Firebird 5.0 Release Candidate 2 is available for testing (英语). 

外部链接