A’ stàladh Firebird 3 air dreachan ùr-nodha de Linux: CentOS8 agus Ubuntu 19

San artaigil seo bheir sinn cunntas air an t-seata as lugha de ghnìomhan a tha riatanach airson an stàladh as fheàrr den dreach 3.0 Firebird DBMS air sgaoilidhean Linux ùra. Tha CentOS 8 agus Ubuntu 19 air an taghadh airson eisimpleirean.

Gus “lìbhrigeadh” an cuairteachadh Firebird chun t-siostam targaid, san stiùireadh seo, tha an roghainn luchdachadh sìos tasglann tar.gz air a thaghadh le bhith a ’cleachdadh ceangal bho làrach-lìn oifigeil a’ phròiseict (firebirdsql.org).

Airson an fheadhainn as mì-fhoighidneach, rachaibh gu cath dìreach:

Stàladh luath

A' deasachadh an fhaidhle /etc/sysctl.confle bhith a’ cur na loidhne ris:

vm.max_map_count = 256000

Sàbhail am faidhle agus cuir an suidheachadh an gnìomh:

sudo sysctl -p /etc/sysctl.conf

Tha tuilleadh stiùiridh eadar-dhealaichte airson CentOS 8 agus Ubuntu 19, ach ССЫЛКА и КАТАЛОГ comharraich ceangal bho làrach-lìn oifigeil pròiseact Firebird airson an sgaoileadh a luchdachadh sìos agus an eòlaire anns an tèid an sgaoileadh a dhì-phapadh tron ​​​​phròiseas luchdaich sìos.
An-dràsta (Màrt 2020) is e an sgaoileadh làithreach Firebird 3.0.5 (an seo an ceangal chun an tionndadh 64-bit).

CentOS 8

sudo yum -y install epel-release
sudo yum -y makecache
sudo yum -y install libicu libtommath tar
ln -s libncurses.so.5 
/usr/lib64/libncurses.so.5
ln -s libtommath.so.1 
/usr/lib64/libtommath.so.0
curl -L ССЫЛКА|tar -zxC /tmp

Ubuntu 19

sudo apt-get -y install libncurses5 libtommath1
ln -s libtommath.so.1 
/usr/lib/x86_64-linux-gnu/libtommath.so.0
wget -O- ССЫЛКА|tar -zxC /tmp

Stàladh fìor an Firebird DBMS:

cd /tmp/КАТАЛОГ
sudo ./install.sh

Ma tha thu airson tuigse nas fheàrr fhaighinn air na tha na gnìomhan sin a’ dèanamh, leugh air adhart.

Am prìomh phàirt

Ro-ràdh goirid

Thathas a’ gabhail ris gu bheil an OS mu thràth air a chuir a-steach ann an dreach as lugha agus tha cothrom air stòran poblach no na lethbhric ionadail aca air a rèiteachadh.

Thathas a’ gabhail ris gu bheil eòlas bunaiteach aig an leughadair air Linux agus an Firebird DBMS.

Dealbhadh

Air an fhrithealaiche DBMS thathar a 'moladh earrannan fa leth a riarachadh airson faidhlichean sealach (/tmp), faidhlichean stòr-dàta agus cùl-taic ionadail.

Tha feadhainn sealach a’ toirt a-steach faidhlichean glasaidh, a’ rèiteach fhaidhlichean, faidhlichean “stuthachadh” de chlàran sealach cruinneil (GTT) agus clàran sgrùdaidh. Tha na faidhlichean airson clàran sealach a sheòrsachadh agus cruinneil suidhichte ann an /tmp, faidhlichean mon$-table agus faidhlichean glasaidh - a-steach /tmp/firebird.

Tha na faidhlichean seòrsachaidh “air an sguabadh às” (unlink) dìreach às deidh an cruthachadh, gus nach bi iad “air am faicinn” ann an liostadh an eòlaire - dìreach anns an liosta de làmhan pròiseas (comharraichte mar deleted):

sudo ls -lhF /proc/`pgrep firebird`/fd

Anns an liosta eòlaire pseudo /proc/…/fd/ tha symlinks air an taisbeanadh, agus tha fìor fhiosrachadh mun fhaidhle air a thoirt seachad le:

sudo stat -L /proc/`pgrep firebird`/fd/НОМЕР

far a bheil НОМЕР - tuairisgeul (tuairisgeul) den fhaidhle ùidh.

An àite a bhith a 'gairm "pgrep исполняемый-файл“Faodaidh tu aithnichear a’ phròiseas ùidh a chuir na àite sa bhad.

Faodaidh faidhlichean sealach a bhith glè mhòr, mar sin /tmp Thathas a’ moladh co-dhiù 20-30 GB a riarachadh. Bu chòir a thoirt fa-near gu bheil meud an seòrsachaidh fhaidhlichean an crochadh a-mhàin air an uiread de dhàta a chaidh a sheòrsachadh gu soilleir no gu h-obann san iarrtas, agus faodaidh aon neach-cleachdaidh “Gababeit” de fhaidhlichean sealach a chruthachadh.

Feumaidh an earrann airson faidhlichean stòr-dàta gabhail a-steach a h-uile faidhle stòr-dàta. agus, aig a’ char as lugha, leth-bhreac den fhaidhle stòr-dàta as motha. Feumar aire a thoirt do fhàs faidhlichean stòr-dàta san àm ri teachd airson grunn bhliadhnaichean ri teachd.

Feumaidh co-dhiù aon tasglann cùl-taic de gach stòr-dàta a bhith anns an roinn cùl-taic ionadail agus cùl-taic den stòr-dàta as motha. Tha e ion-mhiannaichte gu bheil àite anns an roinn seo cuideachd airson an stòr-dàta as motha ath-nuadhachadh. Bu chòir aire a thoirt don fhàs ann an cùl-taic agus tasglannan cùl-taic san àm ri teachd airson grunn bhliadhnaichean.

Ullachadh tòiseachaidh

Bidh am frithealaiche Firebird 3.0 DBMS gu dinamach a’ riarachadh agus a’ saoradh cuimhne siostam, a dh’ fhaodadh a bhith air a sgaradh. Mar eisimpleir, às deidh àireamh mhòr de luchd-cleachdaidh a bhith air an sgaradh bhon t-superserver aig an aon àm, faodaidh mearachdan tachairt nuair a bhios tu a’ dèanamh cheanglaichean ùra.

Tha sgaradh cuimhne air a smachdachadh le paramadair siostam vm.max_map_count, is e 64K an àbhaist. Thathas a’ moladh a luach àrdachadh ceithir tursan:

sudo sysctl vm.max_map_count=256000

Gus am bi an luach ùr air a shuidheachadh nuair a bhios an siostam ag ath-thòiseachadh, cuir ris an fhaidhle /etc/sysctl.conf loidhne:

vm.max_map_count = 256000

Tha e ciallach beachd a thoirt seachad gus am bi an adhbhar airson am paramadair seo atharrachadh soilleir. Faodaidh tu am faidhle a dheasachadh an toiseach agus an uairsin na roghainnean a chaidh a shàbhaladh a chuir an sàs ann:

sudo sysctl -p /etc/sysctl.conf

Stàladh pacaidean a tha a dhìth

Tha faidhlichean so-ghnìomhaichte den Firebird 3.0 Linux DBMS an urra ris na leabharlannan ncurses (libncurses.so.5), ICU (gun a bhith ceangailte ris an dreach agus gun a bhith air a thaisbeanadh ann an toradh ldd) agus Tommath (libtommath.so.0). Gus an tasglann cruinneachaidh a luchdachadh sìos agus a dhì-phapadh, bidh feum agad air goireasan gzip, tar и curl no wget. tionndaidhean ICU, gzip, tar и curl/wget - tha iad beag.

Bidh obrachadh le pacaidean an urra ris an t-siostam agus air a’ mhanaidsear pacaid a thathar a’ cleachdadh san t-siostam, agus mar sin beachdaichidh sinn orra aon às deidh aon.

CentOS 8

Bidh CentOS 8 a’ cleachdadh manaidsear pacaid ùr - dnf agus canar “follaiseach” ris le àithne yum. Leis nach eil diofar eadar iad airson ar n-adhbharan - anns na h-eisimpleirean bidh yum.

Ùraich an tasgadan meata-dàta: sudo yum makecache

Tha am pasgan libtomath suidhichte ann an stòr E (xtra)P (acages airson) E (nterprise) L (inux) air leth, agus mar sin nì sinn cinnteach gu bheil e air a ghabhail a-steach mu thràth:

yum -C repolist

Roghainn "a-mhàin bhon tasgadan" (-C no --cache-only) air a chleachdadh gus cuir às do sgrùdaidhean neo-riatanach agus luchdachadh sìos, a’ dèanamh yum nas luaithe. Mura h-eil stòr epel air an liosta, stàlaich e agus ùraich an tasgadan meata-dàta:

sudo yum install epel-release &&
sudo yum makecache

Bidh sinn a 'dearbhadh iarrtasan, ma tha sin riatanach, a' sgrùdadh luachan iuchraichean pgp leis an fheadhainn a tha aithnichte mar-thà bho stòr earbsach.

Ma tha duilgheadasan ann a bhith a’ luchdachadh fiosrachadh dàta stòrais bho ghoireasan https, an uairsin deasaich am faidhle /etc/yum.repos.d/epel.repo, a' gabhail àite https:// air http:// agus cuir a-rithist an òrdugh ùrachadh tasgadan.

Bidh sinn a’ sgrùdadh inbhe nam pasganan a tha a dhìth (tha an àithne iom-fhillte, anns an toradh eisimpleir tha am pasgan 32-bit air a shìoladh):

yum -C list 
ncurses libicu libtommath 
gzip tar curl wget |
grep -v i686
Installed Packages
curl.x86_64 7.61.1-11.el8 @anaconda
gzip.x86_64 1.9-9.el8 @anaconda
ncurses.x86_64 6.1-7.20180224.el8 @anaconda
Available Packages
libicu.x86_64 60.3-1.el8 BaseOS
libtommath.x86_64 1.1.0-1.el8 epel
tar.x86_64 2:1.30-4.el8 BaseOS
wget.x86_64 1.19.5-8.el8_1.1 AppStream

Chì sinn sin curl, gzip и ncurses air aoigheachd ann am pseudo-repository an stàlaichear (anaconda), agus tar - air a thoirmeasg bhon stàladh siostam as ìsle. Prìomh tionndaidhean libncurses и libtommath barrachd na tha a dhìth: 6 agus 1 an àite 5 agus 0, fa leth. Ma tha an aon phacaid air a chuir a-steach agus ri fhaighinn, chaidh ùrachadh fhoillseachadh air a shon. Stàlaich na pacaidean a tha a dhìth:

sudo yum install 
libicu libtommath tar

Ubuntu 19

Tha goireasan air an dealbhadh gus pacaidean a riaghladh apt, apt‑get и apt‑cache. Tha a’ chiad fhear air a dhealbhadh airson obair eadar-ghnìomhach, agus tha an dithis mu dheireadh air an dealbhadh airson an cleachdadh ann an sgriobtaichean. Tha ainmean pacaid beagan eadar-dhealaichte agus a’ toirt a-steach an dreach.

Bidh sinn a’ sgrùdadh inbhe nam pasganan a tha a dhìth (tha an àithne air a chur còmhla, tha an toradh eisimpleir air a ghiorrachadh, agus tha pasganan 32-bit air an sìoladh a-mach):

apt list libncurses? libicu?? libtommath? 
gzip tar curl wget |
grep -v i386
curl 7.65.3-1
gzip 1.10-0 [upgradable…]
libicu63 63.2-2 [installed]
libncurses5 6.1
libncurses6 6.1 [installed,automatic]
libtommath1 1.1.0
tar 1.30 [installed]
wget 1.20.3 [installed]

Pacaidean airson a bheil na camagan ceàrnagach a 'comharrachadh installed/upgradable - air a stàladh. Ri fhaighinn ach chan eil e air a chuir a-steach ncurses5, An àite curl stàlaichte wget. Stàlaich na pacaidean a tha a dhìth:

sudo apt‑get install 
libncurses5 libtommath1

Cruthachadh symlinks

Bhon àm sin libtommath.so.1 и libncurses.so.6 air ais co-chosmhail ri libtommath.so.0 и libncurses.so.5, an uairsin airson Firebird tha e gu leòr symlinks a chruthachadh ris na dreachan a th’ ann mu thràth de na leabharlannan.

Lorg sinn libtommath.so.1 (libncurses.so.? suidhichte san aon eòlaire):

find /usr -name libtommath.so.1

CentOS:

/usr/lib64/libtommath.so.1

Ubuntu:

/usr/lib/x86_64-linux-gnu/libtommath.so.1

Bidh sinn a’ cruthachadh symlinks.

CentOS:

sudo ln -s libtommath.so.1 
/usr/lib64/libtommath.so.0
sudo ln -s libncurses.so.6 
/usr/lib64/libncurses.so.5

Ubuntu:

sudo ln -s libtommath.so.1 
/usr/lib/x86_64-linux-gnu/libtommath.so.0

Feuch an dèan sinn sgrùdadh air an toradh (tha an àithne iom-fhillte, tha na h-eisimpleirean toraidh air an giorrachadh):

ls -lhF 
$(dirname `find /usr -name libtommath.so.1`) |
grep "lib(ncurses|tommath).so."

CentOS:

libncurses.so.5 -> libncurses.so.6*
libncurses.so.6 -> libncurses.so.6.1*
libncurses.so.6.1*
libtommath.so.0 -> libtommath.so.1*
libtommath.so.1 -> libtommath.so.1.1.0*
libtommath.so.1.1.0*

Ubuntu:

libncurses.so.5 -> libncurses.so.5.9
libncurses.so.5.9
libncurses.so.6 -> libncurses.so.6.1
libncurses.so.6.1
libtommath.so.0 -> libtommath.so.1
libtommath.so.1 -> libtommath.so.1.1.0
libtommath.so.1.1.0

Luchdaich sìos pasgan sgaoilidh Firebird DBMS.

Tha làrach-lìn oifigeil a’ phròiseict Firebird (firebirdsql.org) a’ foillseachadh cheanglaichean gu sgaoilidhean fiosan “oifigeil” agus togail “làitheil” (togail dhealbhan).

Tha fiosan oifigeil Linux rim faighinn mar thasglannan (tar.gz) agus pasganan deb/rpm, ach chan eil toglaichean rim faighinn ach mar thasglannan. Beachdaichidh sinn air an "stàlaiche coitcheann" (stàlaiche coitcheann bho tar.gz).

Feumar an tasglann togail a luchdachadh sìos agus a dhì-phapadh, ach cuiridh sinn an dà phròiseas còmhla. Tha dì-phapadh air a dhèanamh a-staigh /tmp, Tha URL a’ comharrachadh a’ cheangail ris an tasglann a ghabhas luchdachadh a-nuas.

curl:

curl -L URL | tar -zxC /tmp

wget:

wget -O– URL | tar -zxC /tmp

bho thùs curl a’ cur an dàta a chaidh a luchdachadh sìos gu stdout ach chan eil e a’ làimhseachadh ath-sheòlaidhean agus cuiridh sinn "‑L", a wget, air an làimh eile: a 'làimhseachadh ath-stiùiridhean, ach a' sgrìobhadh dàta gu faidhle agus cuiridh sinn "‑O‑" Airson tar comharrachadh cleachdadh gzip-filter agus an eòlaire anns an tèid an dì-phapadh a dhèanamh. Nuair a bhios am pròiseas deiseil, nochdaidh eòlaire mar seo Firebird‑3.0.5.33220‑0.amd64 le trì faidhlichean: install.sh, buildroot.tar.gz и manifest.txt.

Firebird a stàladh

Rè an ullachadh tòiseachaidh, dh'atharraich sinn luach paramadair an t-siostaim vm.max_map_count, sgrùdadh airson faighinn a-steach agus chuir e a-steach na leabharlannan ICU, ncurses agus tomath. Dèan cinnteach gu bheil na dreachan de ncurses agus tomath ceart (libncures.so.5 и libtommath.so.0) agus chruthaich e na symlinks riatanach.

Tha an stàladh fìor gu math sìmplidh. Rach don eòlaire far an deach tasglann cuairteachaidh Firebird a dhì-phapadh, thoir sùil agus, ma tha sin riatanach, suidhich a’ bhratach “executable” airson an sgriobt install.sh:

chmod +x install.sh

ruith an sgriobt stàlaidh:

sudo ./install.sh

Le putadh air an iuchair Enter bidh sinn a’ dearbhadh toiseach an stàlaidh, agus nuair a gheibhear an t-iarrtas, cuir a-steach am facal-faire sysdba.

Tòisichidh an sgriobt stàlaidh gu fèin-ghluasadach systemd- aonad firebird-superserver (ailtireachd Firebird 3.0 sàmhach). Bidh seirbheis Firebird ag obair leis na paramadairean bunaiteach airson an t-superserver: tasgadan duilleag de 2048 duilleag (gach stòr-dàta), bufair seòrsachaidh de 64 MB (co-roinnte) agus a’ ceangal dìreach teachdaichean dreach XNUMX. Seall roghainnean firebird.conf:

grep -v ^# firebird.conf | grep -v ^$

Thoir an aire gu bheil na luachan ùra bho firebird.conf thèid a chuir an gnìomh dìreach às deidh seirbheis Firebird ath-thòiseachadh.

Nuair a bhios tu a’ taghadh luachan paramadair, bu chòir a thoirt fa-near gu bheil trì prìomh “luchd-cleachdaidh” ann: tasgadan na duilleige (airson an stòr-dàta), am bufair seòrsachaidh (co-roinnte) agus an cuimhne a chuir an frithealaiche airson ceanglaichean teachdaiche. Chan urrainn dhut ach a’ chiad dhà a riaghladh - tha an ìre de chuimhne airson ceanglaichean teachdaiche an urra ri àireamh agus teacsa nan ceistean taisgte, na planaichean aca agus na stuthan stòr-dàta a tha an sàs anns na ceistean. Tha tuairmsean cuimhne ceangail teachdaiche air an dèanamh gu empirigeach a-mhàin agus faodaidh iad atharrachadh mar a bhios tagraidhean teachdaiche agus / no nithean stòr-dàta ag atharrachadh.

Airson superserver air luchd-aoigheachd le beagan cuimhne (suas gu 12-16 GB), cha bu chòir dhut barrachd air trian no cairteal den àireamh iomlan de RAM a riarachadh airson tasgadan na duilleige agus bufair a sheòrsachadh.

Mura h-eil an àireamh de stòran-dàta stèidhichte agus gun urrainn dhaibh atharrachadh, bu chòir an àireamh iomlan de chuimhne tasgadan duilleag a roinn leis an àireamh as motha de stòran-dàta a dh’ fhaodas a bhith air an fhrithealaiche. Tha meud tasgadan na duilleige air a shònrachadh ann an duilleagan agus feumar a thionndadh gu bytes fa leth.

Gus atharrachadh gu ailtireachd clasaigeach, feumaidh tu, aig a 'char as lugha, sònrachadh gu soilleir ServerMode в firebird.conf, lughdaich tasgadan na duilleige an sin (gun a bhith nas fhaide na 2K), lughdaich am bufair seòrsa (an tomhas iomlan ceadaichte de gach seòrsa air a roinn leis an àireamh as motha de cheanglaichean), cuir à comas agus stad an aonad firebird-superserver, cuir an comas agus tòisich an aonad firebird-classic.socket.

Chan eil cleachdadh na h-ailtireachd superclassic ann an Firebird 3.0 a’ dèanamh mòran ciall: tha “earbsach” coltach ri superserver agus an aon bufair seòrsachaidh coitcheann. Chan eil tasgadan duilleag cumanta ann agus tha na “callan” airson a bhith a’ sioncronadh diofar cheanglaichean ri chèile co-ionann ris an fhear clasaigeach.

Bu chòir cuimhneachadh gum faodar cuid de pharamadairean (tasglann duilleag, meudan faidhle glasaidh, clàran hash agus cuid eile) a shuidheachadh ann an Firebird 3.0. databases.conf fa leth airson gach stòr-dàta. Airson superserver tha e feumail, mar eisimpleir, luach beag a shuidheachadh DefaultDbCachePages в firebird.conf agus cuir a-steach caches duilleag fa leth airson na stòran-dàta riatanach ann databases.conf.

Faighnich ceistean mun artaigil anns na beachdan, no sgrìobh litrichean chun t-seòladh taic againn [post-d fo dhìon].

Source: www.habr.com

Cuir beachd ann