2013-09-27 70 views
6

我有一個關於Firebird客戶端和服務器版本的問題。由於ODS更改,我知道數據庫文件必須與Firebird服務器匹配。即Firebird建議備份/恢復服務器版本2.5.1和2.5.2之間的數據庫文件...Firebird客戶端與Firebird服務器的兼容性

但客戶端連接到服務器又如何呢?

哪些組合可以?

客戶端2.5.2 - >服務器2.5.2(應該確定;))
客戶端2.5.2 - >服務器2.5.1
客戶端2.5.1 - >服務器2.5.2
客戶端2.5.X - >服務器1.5
1.5.x的客戶端 - >服務器2.5.2

是否有任何已知問題? Firebird的建議是什麼? 這是一個很好的爲什麼總是使用新的官方客戶端?但由於我們有很多客戶安裝,我無法確定服務器是否與客戶端版本匹配。

希望有人可以給我一些建議。

+0

[Firebird 2.5.2](http://www.firebirdsql.org/file/documentation/release_notes/html/rlsnotes252.html)的發行說明中有一些提示。也許Firebird郵件列表中的某人可以進一步提供幫助。 –

回答

5

Firebird協議具有版本控制機制:客戶端和服務器協商要使用的協議版本。當前的Firebird服務器版本支持Firebird的所有以前的協議版本(直到並且包括其分叉的Interbase 6.0)。這意味着任何Firebird客戶端版本都可以與任何Firebird版本進行通話。但是,如果您使用較舊的客戶端,則無法使用新協議版本中添加的功能,並且您將無法使用協議中的某些性能改進。

所以:是的,您可以使用舊版本,但建議您使用最新的版本,因爲錯誤將被修復,新功能或性能改進已被添加。

我的回答只適用於TCP/IP連接。對於使用XNET或命名管道的「本地」連接,我知道在1.5和2.0之間發生了突變,您甚至可能需要一個與Firebird服務器版本相匹配的客戶端版本。

對於Firebird 3,使用較老的客戶端版本確實有一些注意事項:默認情況下,Firebird 3需要有線協議加密和新的身份驗證機制,兩者都是在Firebird 3中使用有線協議版本13引入的。爲了能夠連接與舊的客戶端版本,你需要做以下修改firebird.conf並重新啓動火鳥:

  1. 放鬆與設置WireCrypt = Enabled的加密要求(默認爲Required
  2. 啓用與設置AuthServer = Srp, Legacy_Auth傳統認證(默認爲Srp