Firebird (数据库)

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

特色
支援多版本並行控制（Multiversion Concurrency Control，MVCC）、預存程序（Stored Procedure）、觸發程序（Trigger）、（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陳述句（）的SAVEPOINT函式與明確鎖定（explicit locking） Firebird 1.5.5 General Notes for rewriting it from C to C++ language等。
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陳述句（）的MERGE函式。更新版本2.1開始支援64位元Windows環境Releases Firebird-win64.  Sourceforge.net; abgerufen am 3. Mai 2011.Releases Firebird-linux-amd64.  Sourceforge.net; 3. May 2011.、觸發式（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）等。
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）。
 舊版本 最新版本 未來版本
Firebird 3.0 發行歷史 版本發布日期重要改进 3.0 Beta 1  2014年12月2日  官方版Firebird 3.0 Beta 1釋出 3.0 Beta 2  2015年7月3日   官方版Firebird 3.0 Beta 2釋出 3.0 RC1 2015年11月9日   官方版Firebird 3.0 RC 1釋出 3.0 RC2 2016年3月3日  官方版Firebird 3.0 RC 2釋出 3.0 2016年4月19日  官方版Firebird 3.0釋出 3.0.1 2016年9月27日  穩定性更新 3.0.2 2017年3月22日  穩定性更新
 支援 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日  穩定性更新
 支援 Android 64位元版本 3.0.9 2022年2月15日  穩定性更新 3.0.10 2022年6月8日  
  穩定性更新
 最後一個版本支援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釋出 4.0 Beta 2  2020年5月14日  官方版Firebird 4.0 Beta 2釋出 4.0 RC1 2021年2月1日  官方版Firebird 4.0 RC1釋出 4.0 2021年6月1日  官方版Firebird 4.0釋出 4.0.1 2021年12月22日  穩定性更新
 新增PKCS 1.5 支援 4.0.2 2022年8月11日  穩定性更新
 新增對Apple M1通訊埠支援 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釋出 5.0 RC1 2023年9月29日  官方版Firebird 5.0 RC1釋出 5.0 RC2 2023年12月18日  官方版Firebird 5.0 RC2釋出 5.0 2024年1月11日 新增分析PSQL語法執行效能PSQL profiler語法

 判斷資料庫所執行引擎版本 
 Windows
執行command應用程式，然後執行下列查詢：

gstat [switches] database_name

例如安裝Firebird位於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工具  
 FlameRobin
 Database Master
 ibWebAdmin

 参考文献 

 外部链接 
Firebird - Relational Database for the New Millenium

Category:開源資料庫管理系統
Category:跨平台軟體