ืืื ืืจืกื ืฉื Firebird ืืฉ ืืจืกื ืืฉืื ืฉื ืคืืจืื ืืื ื ืืืกืง ืืกื ืื ืชืื ืื, O(n)D(isk)S(tructure). ืขื ืืจืกื 2.5 ืืืื, ืื ืืข Firebird ืืืื ืืขืืื ืขื ODS ืฉื ืืจืกืืืช ืงืืืืืช, ืืืืืจ ืืกืื ื ืชืื ืื ืืืจืกืืืช ืืฉื ืืช ื ืคืชืื ืขื ืืื ืืืจืกื ืืืืฉื ืืขืืื ืืืฆื ืชืืืืืช, ืืื ืื ืืข Firebird 3.0 ืขืืื ืจืง ืขื ืืกืื ื ืชืื ืื ืืืจืกืช ODS ืืฉืื. 12.0.
ืืื ืืขืืืจ ื-3.0, ืืฉ ืืืืืจ ืืช ืืกื ืื ืชืื ืื ื-2.5 ืืคืืจืื ืืืืฉ ืืืืฆืขืืช ืืืืื/ืฉืืืืจ. ืืืืื, ืื ื ืื ืืืื ืฉืืกื ืื ืชืื ืื ืืืื ืืขืืจ ืืืืจื - ืืืืืจ. ืืื ื ืชืื ืื ืืฉืืืืชืืช ื ืืืงื ืืืื ืชืืืืืช ืขื Firebird 3.0.
ืื ืืชื ืคืืขื ืืคื ืืืืฉื ืืกืื ืืจืืืช, ืื ืืืืจ ืฉืืชื ืฆืจืื ืืืฆืข ืืืืื ืืืจืกื 2.5, ืืื ืืืชืงืื 3.0 ืืืืฆืข ืฉืืืืจ. ืืืื ืืื ืืงืืื ืื ืืฉ ืืกืคืืง ืืื, ืืื ืืืขืืจืช ืืกืื ื ืชืื ืื ืืืืืื, ืื ืืืขืืจ ืฉื ืืื ืขืฉืจืืช ืืกืืกื ื ืชืื ืื ืืืงืืื, ืืฉืืืื ืืืื, ืืคืฉืจ ืืืฉืชืืฉ ืืืืจื ืกืืจืืืื ื ืฉืืื ืืืืจื ื-30-40%. ืืื ืืืืืง ืืขืฉืืช ืืืช (ืชืืช Windows ืืชืืช ืืื ืืงืก), ืงืจื ืชืืช ืืืชื.
ืืจืขืืื ืืืืื ืืื ืฉื ืฉืชืืฉ ืืฆืื ืืจ ืืื ืืืืืฅ ืืช ืืขื ืืื ืื:
gbak -b โฆ ะฑะฐะทะฐ25 stdout | gbak -c โฆ stdin ะฑะฐะทะฐ30
Gbak ื-2.5 ืืืฆืจ ืืืืื ืืคืืจืื ืืื ืืืจื ืืฉืืื ืืืชื ื-stdout, ืฉืืื ืงืืื gbak ื-3.0 ืืจื stdin ืืืืฆืจ ืืกื ื ืชืื ืื ืืืฉ.
ืืฉ ืฆืืจื ืืืจืื ืฆืื ืืจ ืืื ืืฉืืืช ืืืฉื ืืงืืืืช (ืงืืฆืื), ืฉืื ืืืฉื ืืจืฉืช (ืืคืืื ืืจื localhost) ืชืื ืืฉืืขืืชืืช ืืช ืืชืืืื.
ืื ื ืขืืืจืื ืขื ืืคืจืืื ืขืืืจ Windows ืืืื ืืงืก ืืืื.
Windows
ืืืงืจื ืฉื Windows, ืืืจื ืืงืื ืืืืชืจ ืืื ืืืฆืืจ ืืื ื ืขืฆืืื ืืืืืืื ืฉื Firebird. ืืฉืืื ืื ืื ืื ื ืืืงืืื
Firebird 3.0 ืืฉืชืืฉ
ืืืจืกื ืืืื ืืืืืช ืืืืชืจ (ืฉืืื ื ืืืจืฉืช ืืชืงื ื ืฉื ืกืคืจืืืช ืืื ืืจืืฆื VS2008/VS2010 ืืืขืจืืช ืืืขื) ืืืืื ืืช ืืงืืฆืื ืืืืื:
25/gbak.exe
25/fbclient.dll
25/firebird.conf
25/firebird.log
25/firebird.msg
25/ib_util.dll
25/icudt30.dll
25/icuin30.dll
25/icuuc30.dll
25/Microsoft.VC80.CRT.manifest
25/msvcp80.dll
25/msvcr80.dll
30/fbclient.dll
30/firebird.conf
30/firebird.msg
30/gbak.exe
30/ib_util.dll
30/icudt52.dll
30/icudt52l.dat
30/icuin52.dll
30/icuuc52.dll
30/msvcp100.dll
30/msvcr100.dll
30/intl/fbintl.conf
30/intl/fbintl.dll
30/plugins/engine12.dll
ืื ืื ืื ืืกื ืขืฉืื ืืืืืื ืฉ-2.5 ืืื ื ืืืื ืืช ืืงืืฆืื intl/fbintl.dll ื-intl/fbintl.conf. ืื ื ืืื, ืืืืืื ืฉ-gbak ืืื ื ืืฉืชืืฉ ืืขืจืืช ืชืืืื ืฉื ืืืืืจ ืืืื ื ืืืืจื ื ืชืื ืื ืืื ืขืจืืืช ืชืืืื, ืื ืืฆื ื"ืืงืื" ืฉื Firebird 3.0, ืืงืืฆืื ืืืื ื ืืืฆืื ืืขืช ืืฆืืจืช ืืื ืืงืกืื.
ื-firebird.conf ืืืืืฅ ืืืืกืืฃ ืืช Firebird 3.0:
MaxUnflushedWrites = -1
MaxUnflushedWriteTime = -1
ืืื ืื, ืจืฆืื ืืืืืืจ ืขืจืื IpcName ืฉืื ืื ืขืืืจ 2.5 ื-3.0.
ืืืฉืจ ืืืืจืื ืืช ืืขืจืืื ืฉื ืคืจืืืจืื ืืืจืื ืฉื firebird.conf, ืื ื ืืืฆืืื ืืฉืืงืื ืคืฉืื: ืืฉืื ืขืืจืื ืื ืชืื ืื, gbak ืืจืืฅ 2.5 ืืชืืืื ืืื, ื-3.0 ืืชืืืื ืืฉื ื, ืืื 2.5 ืืืฆืืื ื-3.0 ืืชืืื ืืื ืืช ืืื ืืงืกืื.
ืืื ืืืืืฅ ืืช ืฉืื ืื ืืืช ืืืื ืืงืก ื-3.0, ืืืืืฅ ืืืืืื ืืช ืืืื ืืคืจืืืจ TempCacheLimit ื~40% RAM (ืื ืืืืืจ ืืฉืจืช ืืืขืืื, ืืืืื).
ืืืืืื, ืื ืืฉืจืช ืืฉ 16 GB ืฉื ืืืืจืื RAM, ืื ืืชื ืืืื ืืฉืื
TempCacheLimit=6G
ืืืืื ืฉื ืืชื ืืืืืืจ ืขืจื ืื ืจืง ืขืืืจ Firebird 64 ืฉื 3 ืกืืืืืช, ืืืืืื ืฉืื ืชืืืื ืฉื 32 ืกืืืืืช ืืื ื ืืืื ืืืงืฆืืช ืืืชืจ ื-2 ืืืื-ืืืื ืฉื ืืืืจืื.
ื-2.5 ืืื ืฆืืจื ืืฉื ืืช ืืช ืืคืจืืืจ ืืื - ืืื ืื ืืืื ืืืืืช ืืืชืจ ื-2 ื'ืืื-ืืืื ืืื ืืงืจื, ืืืื ืื ืืฉืคืืข ืขื ืืืืืจืืช ืืืื ืืืืืื.
ืืคื ื ืืืฆืืข ืืคืขืืื, ืขืืื ืืืืืง ืฉืืืืื ืืขืืืืื ืืืืชืจืช ืืกื ืื ืชืื ืื ืืืืืจ ื-0 (ืคืงืืื gstat -h databasename
, ืขืืื ืืฉืืจื ืืืืจื ืขืืืืื).
ืื ืืืืืื ืืืืืจ ืืืคืืจืฉ ืืืืชืจืช ืฉื ืืกื ืื ืชืื ืื, ืื ืืื ืขืืงืฃ ืืช ืืขืจืืื ื-firebird.conf (ื-databases.conf ื-3.0), ืืืืงืจื ืฉื ืขืจืืื ืื ืืกืคืืง ืืืืืื, ืื ืืืื ืืืืืื ืืฆืจืืืช ืืืืจืื ืืืืืืช ืืืืืคื.
ืืืืจ ืืื, ืืขืชืง ืืช ืืงืืฆืื ืืืขืจืืช ืืืขื.
ืืืืจื ืืชืืฆืขืช ืืืืจ ืืคืกืงืช ืฉืืจืืช "ืืืขืจืืช" Firebird 2.5, ืืฉืืจืช ืืคืงืืื ืขื ืืืืืืช ืืืืืืช ืืื ืื ืืืงืืื (ืืืืื):
set ISC_USER=ะฒะปะฐะดะตะปะตั
"25/gbak" -z -b -g -v -st t -y 25.log ะฑะฐะทะฐ25 stdout|^
"30/gbak" -z -c -v -st t -y 30.log stdin ะฑะฐะทะฐ30
ืืืืื ืื ืืฉืชืืฉืช ื"ืืืืกื ืงืืืื" ืืืืจืืืืช (ืชืงืฃ "ืกืื ืื ืืื ืืงืก"), ื"ืืืืข" (ืืชื "^") ืืืจื ืืืชื ืืืืฉ, ืืืจ ืฉืืืืฉื ืืขืช ืืงืืืช ืคืงืืืืช ืืจืืืืช. ืืืคืฉืจืืช -st(atus) ืืืคืืขื ื-Firebird 2.5.8 ืืืืคืฉืจืช ืื ืืจืฉืื ื ืชืื ืื ืืืื ืืืื ืฉืื ืคืขื ืชืืืื gbak (ืืคืจืืื, ืขืืื ืืชืืขืื).
ืืื ืืงืก
ื-Linux Firebird 3 ืชืืื ืืกืคืจืืืช tommath. ื- CentOS (RHEL) ืืกืคืจืืื ืืื ืืืืงืืช ืืืืืจ ื-epel, ืืืืืื ืื (Debian) ืืืืืจ ืืืขืจืืช.
ืขืืืจ CentOS, ืชืืืื ืขืืื ืืืืจ ืืช ืืืืจ ื-epel ืืจืง ืืืืจ ืืื ืืขืฉืืช ืืืช
yum install libtommath
ืืืืื ืื ืืื ื ืฆืจืืื ืืืืื ืืืืจืื ื ืืกืคืื, ืื ืืืืื ืื 16 ืืืืืื ืื 18 ืืชืงืื ืืช ืืจืกืืืช ืฉืื ืืช ืฉื ืืืืืืืช - libtommath0 ื-libtommath1, ืืืชืืื.
Firebird 3.0 ืืืคืฉ tommath.so.0 ืืขืืืจ ืืืืื ืื 18 ื ืืจืฉ ืื ืืกืฃ ืืืฆืืจ ืงืืฉืืจ (Symlink) ื tommath.so.0 ื tommath.so.1. ืืื ืืขืฉืืช ืืืช, ืชืืืื ืขืืื ืืืฆืื tommath.so.1.
ืืืคืืฉ ื ืชืื ืืืืืื ืื - /usr/lib/x86_64-linux-gnu/
, ืื ืืคืฆืืช ืืืจืืช ืืืืืกืกืืช ืขื ืืืืื ืขืฉืืืืช ืืืืืช ืฉืื ืืช.
ืืืขืื ืืฉื ืืื ื ืืืขืช ืืืขืืืื ืฉืขื Firebird 3.0.1, ืืืื, ืื ืืืืชื ืืจื ืงืื ืืืชืงืื ืฉืชื ืืจืกืืืช ืฉืื ืืช ืฉื ืืฉืจืช. ืืื ื ื ืืชืืืืกืื ืืืคืฉืจืืช "ืืืืืจ ืืืงืืจืืช ืขื ืืงืืืืืช ืื ืืจืฉืช" ืืืื ืขืืฆืืช ืืขืืืื ืืืืกืืช ืฉืื.
ืขืืืจ Firebird 3.0.2 ืืืขืื ืืืืฉื
ืืื ืื ืฉื ืืกืคื ืืืขืจืืช ืกืคืจืืืช tommath ืืืืืืช ืืฆืืจื ืงืืฉืืจ ืกืืืื ืขืืืจ tommath.so.0, ื ืืชื ืืืชืงืื ืืช ืืืคืฆื ืื ืืืืืช (ืืืื ืืชืืืช ืฉืืจืืช ืืื) ืฉื Firebird 3.0.4 ื, ืืืฉื, /opt /fb3:
./install.sh -path /opt/fb3
ืืืืจ ืืื, ืชืืื ืืืคืกืืง ืืช ืฉืืจืืช ืืขืจืืช Firebird ืืืืชืืื ืืืจื ืืกืืจืืืื ื.
ืืฉืืชื ืขืืฆืจ ืืช Firebird, ืืืืจ ืฉืชืืืืื Firebid 2.5 ืืืฆื ืงืืืกื ืืชืืืืื ืืืจื ืืื ืขื ืืื xinetd - ืื ืืชื ืฆืจืื ืืืฉืืืช ืืช ืฉืืจืืช Firebird ืขืืืจ xinetd ืื ืืืคืกืืง ืืช xinetd ืืืืืืื.
ื-firebird.conf ืขืืืจ 3.0 ืืืื ืืงืก, ืืื ืฆืืจื ืืืืืืจ ืคืจืืืจืื ืฉื MaxUnflushed (ืื ืขืืืืื ืจืง ื-Windows) ืืืฉื ืืช ืืช ืืืืจืืช Firebird 2.5.
ืืืื ืืงืก, ืืืฉื ืืงืืืืช (ืงืืฆืื) ืฉื Firebird 2.5 ืืื ื ืฉืืื ืขืจื ืืืจืกื ืืืืืืขืช ืชืืช Windows - ืฉืจืช 2.5 ืืคืขื ืืชืืืื gbak (ืืื ืืืง ืืจืฉืช), ืื ืืืืืืช ืืืืฉื ืืืืืงื ืืื ืืกืืก ืืืฉืชืืฉืื, ืื ืฉืืืืจ ืฉ ืื ืจืง ืืื ืืกื, ืืื ืื ืืกืืกืื ืชืืืจืฉ:
export ISC_USER=username ISC_PASSWORD=password
/opt/firebird/bin/gbak -b โฆ ะฑะฐะทะฐ25 stdout
|/opt/fb3/bin/gbak -c โฆ stdin ะฑะฐะทะฐ30
ืืืืจ ืืืจื ืืืฆืืืช ืืฉ ืืืกืืจ ืชืืืื ืืช ื-Firebird 3.0 ื"ื ืืกืฃ", ืืืืจ ืืื ืืช ื-Firebird 2.5 ื"ืจืืฉื", ืืืืืจ ืืื ืืืฆืข ืืชืงื ื ื ืงืืื ืฉื Firebird 2.5 - ืืขืืืฃ ืืืืชืงืื ืืจืืื ืฉื tar.gz, ืืื ืืจื ื-Firebird XNUMX. ืืืืจืื, ืื. ืืืจืกื ืืืืืจืื ืขืฉืืื ืืคืืจ ืืืืืจ.
ืืื ืื, ืืืืจ ืฉืืืืจ ืืกื ืื ืชืื ืื ื-Linux ืืืชืงื ื ืืืืฉ, ืขืืื ืืืืืง ืฉืืืกืืก ืื ืชืื ืื ืืืืฉ ืืื ืืืขืืืช ืืืฉืชืืฉ ืฉื Firebird.
ืื ืื ืื ืืืงืจื, ืื ืืืื ืฆืืจื ืืชืงื ืืช ืื.
chown firebird.firebird database
ืกื ืืื
ืื ืืกืฃ ืืืืกืืื ืืืื ืืืฉืื ืืืกืง, ืืืืจืช ืกืืจืืืื ื ืืฉ ืืชืจืื ืืฉืื ื ืืกืฃ - ืืืจืช ืืกื ืื ืชืื ืื ืืชืืฆืขืช ืืื ืืืืงืช ื-Firebird 2.5 ืืงืืื, ืื ืฉืืงื ืืืื ืขื ืืืืจื ืืืืืจ ืืืงืจื ืฉื ืืืจื ืื ืืืฆืืืช (ืืจืื ืขืงื ืืืกืจ ืืงืื ืื ืืชืืื ืื ืฆืคืื ืืืืื ืืืืืจื ืชืืืื).
ืืืืกืืื ืืืื ื ืืืข ืืื ืฉืืืืจื ื"ืงืืืกืืช" ืืื "ืืื ืืืืื" ืืชืืกืคืช "ืืื ืฉืืืืจ". ืืฉืืืืจ ืืืจืื ืืฉื ื ืืืงืื: ืงืจืืืช ื ืชืื ืื ืืงืืืฅ ืืืืื ืืื ืืืช ืืื ืืงืก.
ืืืืจื ืืกืืจืืืื ื, ืืืื ืืืืื ืืชืงืื ื"ืืื ืืืืื ืคืืืก ืืืืฉื ืขื ืขืฉืจื ืืืืืื" ื"ืืื ืื ืืืช ืืื ืืงืก".
ืชืืฆืืืช ืกืคืฆืืคืืืช ืชืืืืืช ืืืื ื ืืกื ืื ืชืื ืื, ืื ืืืืืฆืข, ืืื ืืฉืืืืจ ืืื ืืคืื ืืืื ืืืืืื. ืืื, ืื ื ืืงื ืืช ืืื ืืืืืื ืืืืืื, ืื "ืืืจื ืงืืืกืืช" ืืื ืฉืืืฉ ืืืืืืช ืืื, ืืืจืื ืืื ืฉืชื ืืืืืืช ืืื. ืืืืืช TempCacheLimit ืขืืืจืช ืืฆืืฆื ืขืื ืืืชืจ ืืช ืืืื.
ืืืืคื ืืืื, ืืืจื ืืกืืจืืืื ื ืืืคืฉืจืช ืืคืืขื ืืืกืื 30-40% ืืืืื ืฉื ืืืืื ืืฉืืืืจ ืืืืคื.
ืฉืืืืช?
ืื ื ืืชืื ืืช ืื ืืฉืืืืช ืืืขืจืืช, ืื ืฉืื ืืืชื ืืืืืจ ืืืชืืืืืืืื ืืืืืชื ืืืฉืืชืฃ ืฉื ืืืืจ ืื - ืืกืืื ืกืืืืจืื, ืืื ืืก ืืขืจืืืช ืืืืื ืฉื iBase, ื-bs at ibase ru.
ืจืง ืืฉืชืืฉืื ืจืฉืืืื ืืืืืื ืืืฉืชืชืฃ ืืกืงืจ.
ืืืืื ืืจืกื ืฉื Firebird ืืชื ืืฉืชืืฉ?
-
Firebird 3.x
-
ืฆืืคืืจ ืืืฉ 2.5
-
ืฆืืคืืจ ืืืฉ 2.1
-
Firebird 2.0, 1.5 ืื 1.0
16 ืืฉืชืืฉืื ืืฆืืืขื. ืืฉืชืืฉ ืืื ื ืื ืข.
ืืงืืจ: www.habr.com