Linux యొక్క ఆధునిక సంస్కరణల్లో Firebird 3ని ఇన్‌స్టాల్ చేస్తోంది: CentOS8 మరియు Ubuntu 19

కొత్త Linux పంపిణీలపై Firebird DBMS వెర్షన్ 3.0 యొక్క సరైన ఇన్‌స్టాలేషన్ కోసం అవసరమైన కనీస చర్యల సెట్‌ను ఈ కథనంలో మేము వివరిస్తాము. ఉదాహరణకు సెంటొస్ 8 మరియు ఉబుంటు 19 ఎంపిక చేయబడ్డాయి.

లక్ష్యం సిస్టమ్‌కు Firebird పంపిణీని "బట్వాడా" చేయడానికి, ఈ గైడ్‌లో, tar.gz ఆర్కైవ్‌ని డౌన్‌లోడ్ చేసే ఎంపిక అధికారిక ప్రాజెక్ట్ వెబ్‌సైట్ నుండి లింక్‌ను ఉపయోగించి ఎంపిక చేయబడుతుంది (firebirdsql.org).

చాలా అసహనం కోసం, నేరుగా యుద్ధానికి వెళ్ళండి:

వేగవంతమైన సంస్థాపన

ఫైల్‌ని సవరిస్తోంది /etc/sysctl.confలైన్ జోడించడం ద్వారా:

vm.max_map_count = 256000

ఫైల్‌ను సేవ్ చేసి, సెట్టింగ్‌ను వర్తింపజేయండి:

sudo sysctl -p /etc/sysctl.conf

CentOS 8 మరియు Ubuntu 19 కోసం మరిన్ని సూచనలు భిన్నంగా ఉంటాయి, కానీ ССЫЛКА и КАТАЛОГ పంపిణీని డౌన్‌లోడ్ చేయడానికి అధికారిక Firebird ప్రాజెక్ట్ వెబ్‌సైట్ నుండి లింక్‌ను సూచించండి మరియు డౌన్‌లోడ్ ప్రక్రియ సమయంలో పంపిణీ అన్‌ప్యాక్ చేయబడే డైరెక్టరీని సూచించండి.
ప్రస్తుతం (మార్చి 2020) ప్రస్తుత విడుదల Firebird 3.0.5 (ఇక్కడ లింక్ ఉంది 64-బిట్ సంస్కరణకు).

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

ఉబుంటు 9

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

Firebird DBMS యొక్క వాస్తవ సంస్థాపన:

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

ఈ చర్యలు ఏమి చేస్తాయో మీరు బాగా అర్థం చేసుకోవాలనుకుంటే, చదవండి.

ప్రధాన శరీరం

ఒక చిన్న ఉపోద్ఘాతం

OS ఇప్పటికే కనిష్ట సంస్కరణలో ఇన్‌స్టాల్ చేయబడిందని మరియు పబ్లిక్ రిపోజిటరీలకు లేదా వాటి స్థానిక కాపీలకు యాక్సెస్ కాన్ఫిగర్ చేయబడిందని భావించబడుతుంది.

రీడర్‌కు Linux మరియు Firebird DBMS గురించి ప్రాథమిక జ్ఞానం ఉందని భావించబడుతుంది.

ప్రణాళిక

DBMS సర్వర్‌లో తాత్కాలిక ఫైల్‌ల కోసం ప్రత్యేక విభాగాలను కేటాయించమని సిఫార్సు చేయబడింది (/tmp), డేటాబేస్ ఫైల్‌లు మరియు స్థానిక బ్యాకప్‌లు.

తాత్కాలికమైన వాటిలో లాక్ ఫైల్‌లు, ఫైల్‌లను సార్టింగ్ చేయడం, గ్లోబల్ టెంపరరీ టేబుల్స్ (GTT) యొక్క “మెటీరియలైజేషన్” ఫైల్‌లు మరియు మానిటరింగ్ టేబుల్‌లు ఉన్నాయి. సార్టింగ్ మరియు గ్లోబల్ టెంపరరీ టేబుల్స్ కోసం ఫైల్‌లు ఉన్నాయి /tmp, mon$-టేబుల్ ఫైల్‌లు మరియు లాక్-ఫైల్స్ – ఇన్ /tmp/firebird.

సార్టింగ్ ఫైల్‌లు "తొలగించబడ్డాయి" (unlink) సృష్టించిన వెంటనే, కాబట్టి అవి డైరెక్టరీ లిస్టింగ్‌లో "చూడలేవు" - ప్రాసెస్ హ్యాండిల్స్ జాబితాలో మాత్రమే (ఇలా గుర్తించబడింది deleted):

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

సూడో డైరెక్టరీ జాబితాలో /proc/…/fd/ సిమ్‌లింక్‌లు ప్రదర్శించబడతాయి మరియు ఫైల్ గురించి వాస్తవ సమాచారం వీరి ద్వారా అందించబడుతుంది:

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

పేరు НОМЕР – ఆసక్తి ఉన్న ఫైల్ యొక్క డిస్క్రిప్టర్ (డిస్క్రిప్టర్).

కాల్ చేయడానికి బదులుగా "pgrep исполняемый-файл"మీరు ఆసక్తి ప్రక్రియ యొక్క ఐడెంటిఫైయర్‌ను వెంటనే ప్రత్యామ్నాయం చేయవచ్చు.

తాత్కాలిక ఫైల్‌లు చాలా పెద్దవిగా ఉంటాయి /tmp కనీసం 20-30 GB కేటాయించాలని సిఫార్సు చేయబడింది. ఫైల్‌లను క్రమబద్ధీకరించే పరిమాణం అభ్యర్థనలో స్పష్టంగా లేదా అవ్యక్తంగా క్రమబద్ధీకరించబడిన డేటా మొత్తంపై మాత్రమే ఆధారపడి ఉంటుందని పరిగణనలోకి తీసుకోవాలి మరియు ఒకే వినియోగదారు గిగాబైట్ల తాత్కాలిక ఫైల్‌లను "సృష్టించవచ్చు".

డేటాబేస్ ఫైల్‌ల విభాగం తప్పనిసరిగా అన్ని డేటాబేస్ ఫైల్‌లను కలిగి ఉండాలి. అదనంగా, కనీసం, అతిపెద్ద డేటాబేస్ ఫైల్ యొక్క కాపీ. రాబోయే అనేక సంవత్సరాలలో భవిష్యత్తులో డేటాబేస్ ఫైళ్ల పెరుగుదలను పరిగణనలోకి తీసుకోవడం అవసరం.

స్థానిక బ్యాకప్‌ల విభాగంలో తప్పనిసరిగా అన్ని డేటాబేస్‌ల యొక్క కనీసం ఒక బ్యాకప్ ఆర్కైవ్ మరియు అతిపెద్ద డేటాబేస్ యొక్క బ్యాకప్ ఉండాలి. ఈ విభాగం అతిపెద్ద డేటాబేస్‌ను పునరుద్ధరించడానికి స్థలాన్ని కలిగి ఉండటం మంచిది. అనేక సంవత్సరాల పాటు భవిష్యత్తులో బ్యాకప్‌లు మరియు బ్యాకప్ ఆర్కైవ్‌ల వృద్ధిని పరిగణనలోకి తీసుకోవాలి.

ప్రాథమిక తయారీ

Firebird 3.0 DBMS సర్వర్ సిస్టమ్ మెమరీని డైనమిక్‌గా కేటాయిస్తుంది మరియు ఖాళీ చేస్తుంది, ఇది దాని ఫ్రాగ్మెంటేషన్‌కు దారితీస్తుంది. ఉదాహరణకు, పెద్ద సంఖ్యలో వినియోగదారులు సూపర్‌సర్వర్ నుండి ఒకేసారి డిస్‌కనెక్ట్ చేయబడిన తర్వాత, కొత్త కనెక్షన్‌లను చేస్తున్నప్పుడు లోపాలు సంభవించవచ్చు.

మెమరీ ఫ్రాగ్మెంటేషన్ సిస్టమ్ పారామీటర్ ద్వారా నియంత్రించబడుతుంది vm.max_map_count, డిఫాల్ట్ 64K. దాని విలువను నాలుగు రెట్లు పెంచాలని సిఫార్సు చేయబడింది:

sudo sysctl vm.max_map_count=256000

సిస్టమ్ రీబూట్ అయినప్పుడు కొత్త విలువ సెట్ చేయబడుతుంది, ఫైల్‌కు జోడించండి /etc/sysctl.conf లైన్:

vm.max_map_count = 256000

ఈ పరామితిని మార్చడానికి కారణం స్పష్టంగా ఉండేలా వ్యాఖ్య చేయడం మంచిది. మీరు మొదట ఫైల్‌ని సవరించి, అందులో సేవ్ చేసిన సెట్టింగ్‌లను వర్తింపజేయవచ్చు:

sudo sysctl -p /etc/sysctl.conf

అవసరమైన ప్యాకేజీలను ఇన్‌స్టాల్ చేస్తోంది

Firebird 3.0 Linux DBMS యొక్క ఎక్జిక్యూటబుల్ ఫైల్‌లు ncurses లైబ్రరీలపై ఆధారపడి ఉంటాయి (libncurses.so.5), ICU (వెర్షన్‌తో ముడిపడి లేదు మరియు అవుట్‌పుట్‌లో ప్రదర్శించబడదు ldd) మరియు టమ్మత్ (libtommath.so.0) అసెంబ్లీ ఆర్కైవ్‌ను డౌన్‌లోడ్ చేయడానికి మరియు అన్‌ప్యాక్ చేయడానికి, మీకు యుటిలిటీలు అవసరం gzip, tar и curl లేదా wget. ICU వెర్షన్లు, gzip, tar и curl/wget - ప్రాముఖ్యత లేనివి.

ప్యాకేజీలతో పని చేయడం సిస్టమ్‌పై మరియు సిస్టమ్‌లో ఉపయోగించే ప్యాకేజీ మేనేజర్‌పై ఆధారపడి ఉంటుంది, కాబట్టి మేము వాటిని ఒక్కొక్కటిగా పరిశీలిస్తాము.

CentOS 8

CentOS 8 కొత్త ప్యాకేజీ మేనేజర్‌ని ఉపయోగిస్తుంది – dnf మరియు అది ఆదేశం ద్వారా "పారదర్శకంగా" అంటారు yum. మా ప్రయోజనాల కోసం వాటి మధ్య తేడా లేదు కాబట్టి - ఉదాహరణలలో ఉంటుంది yum.

మెటాడేటా కాష్‌ని నవీకరించండి: sudo yum makecache

libtomath ప్యాకేజీ ఒక ప్రత్యేక E(xtra)P(acages for)E(nterprise)L(inux) రిపోజిటరీలో ఉంది, కనుక ఇది ఇప్పటికే చేర్చబడిందో లేదో తనిఖీ చేస్తాము:

yum -C repolist

ఎంపిక "కాష్ నుండి మాత్రమే" (-C లేదా --cache-only) అనవసరమైన తనిఖీలు మరియు డౌన్‌లోడ్‌లను తొలగించడానికి ఉపయోగించబడుతుంది, ఇది yumని వేగవంతం చేస్తుంది. జాబితాలో ఎపెల్ రిపోజిటరీ లేకపోతే, దాన్ని ఇన్‌స్టాల్ చేసి, మెటాడేటా కాష్‌ని అప్‌డేట్ చేయండి:

sudo yum install epel-release &&
sudo yum makecache

మేము అభ్యర్థనలను ధృవీకరిస్తాము, అవసరమైతే, విశ్వసనీయ మూలం నుండి ఇప్పటికే తెలిసిన వాటితో pgp కీల విలువలను తనిఖీ చేస్తాము.

https వనరుల నుండి రిపోజిటరీ మెటైన్‌ఫర్మేషన్‌ను లోడ్ చేయడంలో సమస్యలు ఉంటే, ఫైల్‌ను సవరించండి /etc/yum.repos.d/epel.repo, భర్తీ చేయడం https://http:// మరియు కాష్ నవీకరణ ఆదేశాన్ని పునరావృతం చేయండి.

మేము అవసరమైన ప్యాకేజీల స్థితిని తనిఖీ చేస్తాము (కమాండ్ క్లిష్టంగా ఉంటుంది, ఉదాహరణ అవుట్‌పుట్‌లో 32-బిట్ ప్యాకేజీ ఫిల్టర్ చేయబడింది):

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

మనం చూస్తాం curl, gzip и ncurses ఇన్‌స్టాలర్ సూడో-రిపోజిటరీలో హోస్ట్ చేయబడింది (anaconda), మరియు tar - కనీస సిస్టమ్ ఇన్‌స్టాలేషన్ నుండి మినహాయించబడింది. ప్రధాన సంస్కరణలు libncurses и libtommath అవసరం కంటే ఎక్కువ: 6 మరియు 1 బదులుగా 5 మరియు 0, వరుసగా. అదే ప్యాకేజీ ఇన్‌స్టాల్ చేయబడి మరియు అందుబాటులో ఉన్నట్లయితే, దాని కోసం ఒక నవీకరణ విడుదల చేయబడింది. తప్పిపోయిన ప్యాకేజీలను ఇన్‌స్టాల్ చేయండి:

sudo yum install 
libicu libtommath tar

ఉబుంటు 9

ప్యాకేజీలను నిర్వహించడానికి యుటిలిటీలు రూపొందించబడ్డాయి apt, apt‑get и apt‑cache. మొదటిది ఇంటరాక్టివ్ పని కోసం రూపొందించబడింది మరియు చివరి రెండు స్క్రిప్ట్‌లలో ఉపయోగం కోసం రూపొందించబడ్డాయి. ప్యాకేజీ పేర్లు కొద్దిగా భిన్నంగా ఉంటాయి మరియు సంస్కరణను కలిగి ఉంటాయి.

మేము అవసరమైన ప్యాకేజీల స్థితిని తనిఖీ చేస్తాము (కమాండ్ మిళితం చేయబడింది, ఉదాహరణ అవుట్‌పుట్ తగ్గించబడుతుంది మరియు 32-బిట్ ప్యాకేజీలు ఫిల్టర్ చేయబడతాయి):

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]

చదరపు బ్రాకెట్లు సూచించే ప్యాకేజీలు installed/upgradable - వ్యవస్థాపించబడింది. అందుబాటులో ఉంది కానీ ఇన్‌స్టాల్ చేయలేదు ncurses5, బదులుగా curl ఇన్స్టాల్ wget. తప్పిపోయిన ప్యాకేజీలను ఇన్‌స్టాల్ చేయండి:

sudo apt‑get install 
libncurses5 libtommath1

సిమ్‌లింక్‌లను సృష్టిస్తోంది

నుండి libtommath.so.1 и libncurses.so.6 వెనుకకు అనుకూలంగా libtommath.so.0 и libncurses.so.5, ఫైర్‌బర్డ్ కోసం ఇప్పటికే ఉన్న లైబ్రరీల సంస్కరణలకు సిమ్‌లింక్‌లను సృష్టించడం సరిపోతుంది.

మేము కనుగొన్నాము libtommath.so.1 (libncurses.so.? అదే డైరెక్టరీలో ఉంది):

find /usr -name libtommath.so.1

centos:

/usr/lib64/libtommath.so.1

ఉబుంటు:

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

మేము సిమ్‌లింక్‌లను సృష్టిస్తాము.

centos:

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

ఉబుంటు:

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

ఫలితాన్ని తనిఖీ చేద్దాం (కమాండ్ క్లిష్టంగా ఉంది, అవుట్‌పుట్ ఉదాహరణలు కుదించబడ్డాయి):

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*

ఉబుంటు:

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

Firebird DBMS పంపిణీ కిట్‌ని డౌన్‌లోడ్ చేస్తోంది.

Firebird ప్రాజెక్ట్ యొక్క అధికారిక వెబ్‌సైట్ (firebirdsql.org) "అధికారిక" విడుదలలు మరియు "రోజువారీ" బిల్డ్‌ల (స్నాప్‌షాట్ బిల్డ్‌లు) పంపిణీలకు లింక్‌లను ప్రచురిస్తుంది.

అధికారిక Linux విడుదలలు ఆర్కైవ్‌లు (tar.gz) మరియు deb/rpm ప్యాకేజీలుగా అందుబాటులో ఉన్నాయి, అయితే బిల్డ్‌లు ఆర్కైవ్‌లుగా మాత్రమే అందుబాటులో ఉంటాయి. మేము "జనరిక్ ఇన్‌స్టాలర్" (tar.gz నుండి జెనరిక్ ఇన్‌స్టాలర్)ని పరిశీలిస్తాము.

బిల్డ్ ఆర్కైవ్ డౌన్‌లోడ్ చేయబడి, అన్‌ప్యాక్ చేయబడాలి, కానీ మేము రెండు ప్రక్రియలను మిళితం చేస్తాము. అన్‌ప్యాక్ చేయడం జరుగుతుంది /tmp,URL డౌన్‌లోడ్ చేయగల ఆర్కైవ్‌కి లింక్‌ని సూచిస్తుంది.

కర్ల్:

curl -L URL | tar -zxC /tmp

wget:

wget -O– URL | tar -zxC /tmp

అప్రమేయంగా curl డౌన్‌లోడ్ చేసిన డేటాను stdoutకి పంపుతుంది కానీ దారి మళ్లింపులను నిర్వహించదు మరియు మేము జోడిస్తాము "‑L", ఎ wget, విరుద్దంగా: దారి మళ్లింపులను నిర్వహిస్తుంది, కానీ ఫైల్‌కి డేటాను వ్రాస్తుంది మరియు మేము "‑O‑" కోసం tar ఉపయోగాన్ని సూచిస్తాయి gzip-ఫిల్టర్ మరియు అన్‌ప్యాకింగ్ నిర్వహించబడే డైరెక్టరీ. ప్రక్రియ పూర్తయినప్పుడు, ఇలాంటి డైరెక్టరీ కనిపిస్తుంది Firebird‑3.0.5.33220‑0.amd64 మూడు ఫైళ్లతో: install.sh, buildroot.tar.gz и manifest.txt.

Firebirdని ఇన్‌స్టాల్ చేస్తోంది

ప్రాథమిక తయారీ సమయంలో, మేము సిస్టమ్ పరామితి యొక్క విలువను సర్దుబాటు చేసాము vm.max_map_count, లభ్యత కోసం తనిఖీ చేయబడింది మరియు ICU, ncurses మరియు tommath లైబ్రరీలను ఇన్‌స్టాల్ చేసారు. ncurses మరియు tommath యొక్క సంస్కరణలు సరైనవని నిర్ధారించుకోండి (libncures.so.5 и libtommath.so.0) మరియు అవసరమైన సిమ్‌లింక్‌లను సృష్టించారు.

అసలు సంస్థాపన చాలా సులభం. Firebird పంపిణీ ఆర్కైవ్ అన్‌ప్యాక్ చేయబడిన డైరెక్టరీకి వెళ్లి, తనిఖీ చేసి, అవసరమైతే, స్క్రిప్ట్ కోసం “ఎక్జిక్యూటబుల్” ఫ్లాగ్‌ను సెట్ చేయండి install.sh:

chmod +x install.sh

ఇన్‌స్టాలేషన్ స్క్రిప్ట్‌ను అమలు చేయండి:

sudo ./install.sh

ఎంటర్ కీని నొక్కడం ద్వారా మేము ఇన్‌స్టాలేషన్ ప్రారంభాన్ని నిర్ధారిస్తాము మరియు అభ్యర్థన అందిన తర్వాత, sysdba పాస్‌వర్డ్‌ను నమోదు చేయండి.

ఇన్‌స్టాలేషన్ స్క్రిప్ట్ స్వయంచాలకంగా ప్రారంభమవుతుంది systemd- యూనిట్ firebird-superserver (సైలెంట్ ఫైర్‌బర్డ్ 3.0 ఆర్కిటెక్చర్). Firebird సేవ సూపర్‌సర్వర్ కోసం డిఫాల్ట్ పారామీటర్‌లతో పని చేస్తుంది: 2048 పేజీల పేజీ కాష్ (ప్రతి డేటాబేస్), 64 MB సార్టింగ్ బఫర్ (షేర్ చేయబడింది) మరియు వెర్షన్ XNUMX క్లయింట్‌లను మాత్రమే కనెక్ట్ చేస్తుంది. ఎంపికలను వీక్షించండి firebird.conf:

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

నుండి కొత్త విలువలు ఉన్నాయని దయచేసి గమనించండి firebird.conf Firebird సేవను పునఃప్రారంభించిన తర్వాత మాత్రమే సక్రియం చేయబడుతుంది.

పారామితి విలువలను ఎంచుకున్నప్పుడు, మూడు ప్రధాన "వినియోగదారులు" ఉన్నారని పరిగణనలోకి తీసుకోవాలి: పేజీ కాష్ (డేటాబేస్ కోసం), సార్టింగ్ బఫర్ (షేర్డ్) మరియు క్లయింట్ కనెక్షన్ల కోసం సర్వర్ కేటాయించిన మెమరీ. మీరు మొదటి రెండింటిని మాత్రమే నిర్వహించగలరు - క్లయింట్ కనెక్షన్‌ల కోసం మెమరీ మొత్తం కాష్ చేసిన ప్రశ్నల సంఖ్య మరియు టెక్స్ట్, వాటి ప్లాన్‌లు మరియు ప్రశ్నలలో ఉన్న డేటాబేస్ ఆబ్జెక్ట్‌లపై ఆధారపడి ఉంటుంది. క్లయింట్ కనెక్షన్ మెమరీ అంచనాలు అనుభవపూర్వకంగా మాత్రమే చేయబడతాయి మరియు క్లయింట్ అప్లికేషన్‌లు మరియు/లేదా డేటాబేస్ వస్తువులు మారినప్పుడు మారవచ్చు.

తక్కువ మొత్తంలో మెమరీ (12-16 GB వరకు) ఉన్న హోస్ట్‌లలోని సూపర్‌సర్వర్ కోసం, మీరు పేజీ కాష్ మరియు క్రమబద్ధీకరణ బఫర్ కోసం మొత్తం RAMలో మూడవ వంతు లేదా పావు వంతు కంటే ఎక్కువ కేటాయించకూడదు.

డేటాబేస్‌ల సంఖ్య స్థిరంగా ఉండకపోతే మరియు మారగలిగితే, పేజీ కాష్ మెమరీ మొత్తం సర్వర్‌లో ఉండే గరిష్ట డేటాబేస్‌ల సంఖ్యతో భాగించబడాలి. పేజీ కాష్ పరిమాణం పేజీలలో పేర్కొనబడింది మరియు విడిగా బైట్‌లుగా మార్చబడాలి.

క్లాసిక్ ఆర్కిటెక్చర్‌కి మారడానికి, మీరు తప్పనిసరిగా కనీసం, స్పష్టంగా పేర్కొనాలి ServerMode в firebird.conf, అక్కడ పేజీ కాష్‌ను తగ్గించండి (2K కంటే ఎక్కువ కాదు), క్రమబద్ధీకరణ బఫర్‌ను తగ్గించండి (అన్ని రకాల మొత్తం అనుమతించదగిన వాల్యూమ్‌ను గరిష్ట కనెక్షన్‌ల సంఖ్యతో భాగించండి), యూనిట్‌ని నిలిపివేయండి మరియు ఆపివేయండి firebird-superserver, యూనిట్‌ని ప్రారంభించండి మరియు ప్రారంభించండి firebird-classic.socket.

ఫైర్‌బర్డ్ 3.0లో సూపర్‌క్లాసిక్ ఆర్కిటెక్చర్‌ని ఉపయోగించడం చాలా అర్ధవంతం కాదు: “విశ్వసనీయత” అనేది సూపర్‌సర్వర్ మరియు అదే సాధారణ సార్టింగ్ బఫర్ లాంటిది. సాధారణ పేజీ కాష్ లేదు మరియు విభిన్న కనెక్షన్‌లను ఒకదానితో ఒకటి సమకాలీకరించడానికి "నష్టాలు" క్లాసిక్‌లో వలె ఉంటాయి.

Firebird 3.0లో కొన్ని పారామితులు (పేజీ కాష్, లాక్ ఫైల్ పరిమాణాలు, హాష్ పట్టికలు మరియు మరికొన్ని) సెట్ చేయవచ్చని గుర్తుంచుకోవాలి. databases.conf ప్రతి డేటాబేస్ కోసం వ్యక్తిగతంగా. సూపర్ సర్వర్ కోసం ఇది ఉపయోగపడుతుంది, ఉదాహరణకు, చిన్న విలువను సెట్ చేయడం DefaultDbCachePages в firebird.conf మరియు అవసరమైన డేటాబేస్‌ల కోసం వ్యక్తిగత పేజీ కాష్‌లను ఇన్‌స్టాల్ చేయండి databases.conf.

వ్యాఖ్యలలో కథనం గురించి ప్రశ్నలు అడగండి లేదా మా మద్దతు చిరునామాకు లేఖలు రాయండి [ఇమెయిల్ రక్షించబడింది].

మూలం: www.habr.com

ఒక వ్యాఖ్యను జోడించండి