Kev hloov pauv hauv online ntawm Firebird 2.5 databases rau ODS12 hom (Firebird 3.0)

Txhua version ntawm Firebird muaj nws tus kheej version ntawm database disk qauv hom - O(n)D(isk)S(tructure). Txog rau version 2.5 suav nrog, lub cav Firebird tuaj yeem ua haujlwm nrog ODS ntawm cov qauv dhau los, uas yog, cov ntaub ntawv los ntawm cov ntawv qub tau qhib los ntawm cov ntawv tshiab thiab ua haujlwm hauv hom sib xws, tab sis Firebird 3.0 cav tsuas ua haujlwm nrog cov ntaub ntawv hauv nws tus kheej ODS version. 12.0 Nws.

Hloov mus rau 3.0, cov ntaub ntawv los ntawm 2.5 yuav tsum tau hloov mus rau hom tshiab ntawm kev thaub qab / rov qab. Tau kawg, peb xav tias cov ntaub ntawv tau npaj yav dhau los rau kev hloov dua siab tshiab - i.e. metadata thiab cov lus nug tau raug kuaj xyuas kom sib haum nrog Firebird 3.0.

Yog tias koj ua raws li tus txheej txheem, qhov no txhais tau hais tias koj yuav tsum ua qhov thaub qab ntawm version 2.5, tom qab ntawd nruab 3.0 thiab ua kom rov qab. Cov txheej txheem no siv tau yog tias koj muaj sijhawm txaus, tab sis thaum tsiv cov ntaub ntawv loj, lossis thaum ib txhij tsiv ntau lub kaum os databases, thaum lub sijhawm khiav tawm, koj tuaj yeem siv kwj hloov dua siab tshiab, uas yog 30-40% sai dua. Yuav ua li cas raws nraim qhov no (hauv Windows thiab Linux), nyeem hauv qab txiav.

Lub tswv yim dav dav yog tias peb yuav siv lub raj xa dej kom nrawm dua:

gbak -b … Π±Π°Π·Π°25 stdout | gbak -c … stdin Π±Π°Π·Π°30

Gbak los ntawm 2.5 generates ib tug thaub qab nyob rau hauv linear hom thiab xa mus rau stdout, uas tam sim ntawd khaws gbak los ntawm 3.0 ntawm stdin thiab tsim ib tug tshiab database.

Nws yog ib qho tsim nyog los npaj cov raj xa dej uas siv cov txheej txheem nkag hauv zos (cov ntaub ntawv), txij li kev nkag mus rau hauv lub network (txawm tias los ntawm localhost) yuav ua rau qeeb qeeb.

Hauv qab no peb saib cov ntsiab lus rau Windows thiab Linux.

lub qhov rais

Nyob rau hauv rooj plaub ntawm Windows, txoj hauv kev yooj yim tshaj plaws yog ua kom tiav ib leeg tsim ntawm Firebird. Rau qhov no peb coj Firebird 2.5 embed archive, rename fbemded.dll rau fbclient.dll, ntxiv "tsis tu ncua" 2.5 nqi hluav taws xob gbak.exe thiab (yeem) isql.exe los ntawm cov ntaub ntawv khaws tseg.

Firebird 3.0 siv ib qho kev sib dhos thiab tsis xav tau kev hloov kho.

Qhov kev xaiv tsawg tshaj plaws (uas tsis xav tau kev teeb tsa ntawm VS2008 / VS2010 runtime qiv ntawm lub hom phiaj) muaj cov ntaub ntawv hauv qab no:

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

Tus thawj coj uas paub txog yuav pom tias 2.5 tsis suav nrog cov ntaub ntawv intl/fbintl.dll thiab intl/fbintl.conf. Qhov no muaj tseeb, txij li gbak tsis siv qhov sib txuas charset thiab tsis hloov cov ntaub ntawv ntawm charsets, tab sis nyob rau ntawm "tau txais" sab ntawm Firebird 3.0 cov ntaub ntawv no xav tau thaum tsim indexes.

Hauv Firebird 3.0 firebird.conf nws raug pom zoo kom ntxiv:

MaxUnflushedWrites = -1
MaxUnflushedWriteTime = -1

Tsis tas li, nws raug nquahu kom teeb tsa qhov sib txawv IpcName qhov tseem ceeb rau 2.5 thiab 3.0.

Thaum xaiv qhov tseem ceeb ntawm lwm yam firebird.conf tsis, peb pib los ntawm kev xav yooj yim: ntawm cov ntaub ntawv hloov mus rau theem, gbak 2.5 tab tom khiav hauv ib txheej txheem, thiab 3.0 tab tom khiav hauv lwm qhov, ces 2.5 ua tiav nws txoj haujlwm, thiab 3.0 pib. tsev indexes.

Txhawm rau txhawm rau txhawm rau txhawm rau txhawm rau ntsuas theem hauv 3.0, nws raug nquahu kom nce qhov loj ntawm TempCacheLimit parameter rau ~ 40% RAM (yog tias qhov no yog lub server tshwj xeeb, tau kawg).

Piv txwv li, yog tias tus neeg rau zaub mov muaj 16 GB ntawm RAM, ces koj tuaj yeem teeb tsa

TempCacheLimit=6G

Tau kawg, tus nqi no tsuas yog tsim tau rau 64-ntsis Firebird 3, txij li cov txheej txheem 32-ntsis yuav tsis tuaj yeem faib ntau dua 2 gigabytes ntawm lub cim xeeb.

Rau 2.5, qhov kev ntsuas no tsis tas yuav hloov pauv - nws tsis tuaj yeem muaj ntau dua 2 gigabytes, thiab txawm tias thaum lub sijhawm thaub qab nws tsis cuam tshuam qhov nrawm.

Ua ntej ua qhov haujlwm, koj yuav tsum xyuas tias nplooj ntawv cache hauv lub database header yog teem rau 0 (hais kom ua. gstat -h databasename, saib Page buffers kab).

Yog tias lub cache tau teeb tsa ncaj qha rau hauv cov ntaub ntawv header, ces nws overrides qhov tseem ceeb ntawm firebird.conf (thiab databases.conf hauv 3.0), thiab nyob rau hauv cov ntaub ntawv ntawm qhov tsis tsim nyog loj qhov tseem ceeb, nws tuaj yeem ua rau tsis tsim nyog nco noj thiab cia hauv swap.

Tom ntej no, luam cov ntaub ntawv mus rau lub hom phiaj system.

Kev hloov dua siab tshiab yog ua tiav tom qab tso tseg qhov kev pabcuam Firebird 2.5 "system", hauv kab hais kom ua nrog cov cai nce rau cov thawj coj hauv zos (piv txwv):

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

Qhov piv txwv no siv "forward slash" hauv cov lus hais ( siv tau "unix-style"), thiab "lub kaus mom" (tus "^" cim) khiav tawm ntawm kab noj cov cim, uas yooj yim thaum ntaus ntawv ntev. Qhov kev xaiv -st (atus) tau tshwm sim hauv Firebird 2.5.8 thiab tso cai rau koj teev cov ntaub ntawv hais txog lub sijhawm khiav ntawm cov txheej txheem gbak (cov ntsiab lus hauv cov ntaub ntawv).

Linux

Ntawm Linux, Firebird 3 nyob ntawm lub tsev qiv ntawv tommath. Hauv CentOS (RHEL) lub tsev qiv ntawv no nyob hauv epel repository, hauv Ubuntu (Debian) hauv qhov system repository.

Rau CentOS koj yuav tsum xub txuas lub epel repository thiab tsuas yog tom qab ntawd ua

yum install libtommath

Ubuntu tsis tas yuav txuas ntxiv repositories, tab sis Ubuntu 16 thiab Ubuntu 18 txhim kho cov khoom sib txawv ntawm cov pob khoom - libtommath0 thiab libtommath1, feem.

Firebird 3.0 saib rau tommath.so.0 thiab rau Ubuntu 18 nws tseem yuav tsum tau tsim ib qho kev sib txuas ntawm tommath.so.0 rau tommath.so.1. Ua li no, koj yuav tsum xub nrhiav tommath.so.1.

Txoj kev koj tab tom nrhiav hauv Ubuntu yog: /usr/lib/x86_64-linux-gnu/, tab sis nws yuav txawv ntawm lwm qhov kev faib tawm Debian.

Qhov teeb meem thib ob tshwm sim los ntawm qhov tseeb tias txog thaum Firebird 3.0.1, suav nrog, tsis muaj txoj hauv kev yooj yim rau nruab ob qhov sib txawv ntawm lub server. Peb tsis xav txog qhov "sib sau los ntawm cov peev txheej nrog rau qhov xav tau ua ntej" kev xaiv vim nws qhov kev sib raug zoo ntawm kev siv zog.

Ua tiav rau Firebird 3.0.2 thiab siab dua tsev nrog -enable-binreloc thiab ib qho kev xaiv installer cais (-path path).

Piv txwv tias lub tsev qiv ntawv tommath thiab, yog tias tsim nyog, lub symlink rau tommath.so.0 tau ntxiv rau hauv qhov system, koj tuaj yeem nruab qhov tam sim no (thaum lub sijhawm sau ntawv no) Firebird 3.0.4 faib hauv, piv txwv li, / opt/fb3: ua.

./install.sh -path /opt/fb3

Tom qab ntawd, koj tuaj yeem nres qhov kev pabcuam Firebird thiab pib hloov pauv hloov pauv.

Thaum nres Firebird, koj yuav tsum coj mus rau hauv tus account tias Firebid 2.5 cov txheej txheem hauv Classic hom feem ntau yog pib los ntawm xinett - yog li ntawd, koj yuav tsum lov tes taw qhov kev pabcuam firebird rau xinetd lossis nres xinetd tag nrho.

Hauv firebird.conf rau 3.0 ntawm Linux, koj tsis tas yuav teeb tsa MaxUnflushed tsis tau (lawv tsuas yog ua haujlwm ntawm Windows) thiab hloov Firebird 2.5 chaw.

Ntawm Linux, hauv zos (cov ntaub ntawv) nkag mus ntawm Firebird 2.5 tsis sib npaug rau cov embeded version nyob rau hauv Windows - server 2.5 yuav khiav hauv cov txheej txheem gbak (tsis muaj lub network ib feem), tab sis cov cai nkag mus yuav raug kuaj tawm tsam tus neeg siv lub hauv paus, uas txhais tau tias koj yuav tsum tsis tsuas yog tus ID nkag mus, tab sis kuj muaj tus password:

export ISC_USER=username ISC_PASSWORD=password
/opt/firebird/bin/gbak -b … Π±Π°Π·Π°25 stdout
|/opt/fb3/bin/gbak -c … stdin Π±Π°Π·Π°30

Tom qab ua tiav kev hloov dua siab tshiab, koj yuav tsum xub tshem tawm "ntxiv" Firebird 3.0, tom qab ntawd "lub ntsiab" Firebird 2.5, thiab tom qab ntawd ua qhov kev teeb tsa huv ntawm Firebird 2.5 - qhov zoo tshaj plaws los ntawm tus qauv tar.gz installer, thiab tsis yog los ntawm cov chaw cia khoom, vim Lub version nyob rau hauv lub repositories yuav lag.

Tsis tas li ntawd, tom qab rov kho cov ntaub ntawv ntawm Linux thiab rov txhim kho nws, koj yuav tsum xyuas tias cov ntaub ntawv tshiab yog tus tswv ntawm tus neeg siv firebird.

Yog hais tias qhov no tsis yog, ces nws yuav tsum tau kho

chown firebird.firebird database

Qhov no

Ntxiv nrog rau kev txuag lub sijhawm thiab qhov chaw disk, kwj hloov dua siab tshiab muaj lwm qhov zoo dua - cov ntaub ntawv hloov dua siab tshiab yog ua tiav yam tsis tau tshem tawm Firebird 2.5 uas twb muaj lawm, uas ua rau nws yooj yim dua rau yob rov qab yog tias qhov hloov dua siab tshiab tsis ua tiav (feem ntau vim tsis muaj chaw lossis ib qho. unexpected reboot thaum lub sij hawm txoj kev tsiv teb tsaws).

Lub sij hawm txuag yog vim qhov tseeb tias "classic" hloov dua siab tshiab yog "lub sijhawm thaub qab" ntxiv rau "lub sijhawm rov qab". Rov qab muaj ob ntu: nyeem cov ntaub ntawv los ntawm cov ntaub ntawv thaub qab thiab tsim qhov ntsuas.

Nrog kev hloov pauv tas mus li, tag nrho lub sijhawm tau txais raws li "lub sijhawm thaub qab ntxiv rau tsib mus rau kaum feem pua" thiab "lub sijhawm tsim kho".

Cov txiaj ntsig tshwj xeeb nyob ntawm tus qauv ntawm cov ntaub ntawv, tab sis qhov nruab nrab lub sijhawm rov qab yog kwv yees li ob npaug ntawm lub sijhawm thaub qab. Yog li ntawd, yog hais tias peb siv sij hawm backup ua ib chav tsev, ces "classical conversion" yog peb units ntawm lub sij hawm, thiab nruam conversion yog ob units ntawm lub sij hawm. Kev nce TempCacheLimit pab txo qis sijhawm ntxiv.

Feem ntau, kev hloov pauv hauv kab hauv kev xyaum tso cai rau koj txuag 30-40% ntawm lub sijhawm xav tau rau kev hloov pauv thiab rov kho dua.

Lus nug?

Thov sau tag nrho cov lus nug nyob rau hauv cov lus, los yog xa mus rau tus sau ntawm cov txheej txheem thiab co-sau ntawm tsab xov xwm no - Vasily Sidorov, tus thawj coj system engineer ntawm iBase, ntawm bs ntawm ibase ru.

Tsuas yog cov neeg siv sau npe tuaj yeem koom nrog hauv daim ntawv ntsuam xyuas. Kos npe rau hauvthov.

Koj siv Firebird version dab tsi?

  • Firebird 3.x

  • Firebird 2.5

  • Firebird 2.1

  • Firebird 2.0, 1.5 lossis 1.0

Voted los ntawm 16 cov neeg siv. 1 tus neeg siv abstained.

Tau qhov twg los: www.hab.com

Ntxiv ib saib