Firebird 3 ကို ခေတ်မီ Linux ဗာသရဟင်သမျာသတလင် ထည့်သလင်သခဌင်သ- CentOS8 နဟင့် Ubuntu 19

ကဆောင်သပါသတလင် Linux ဖဌန့်ဝေမဟုအသစ်မျာသတလင် Firebird DBMS ဗာသရဟင်သ 3.0 ကို အကောင်သဆုံသထည့်သလင်သရန်အတလက် လိုအပ်သော အနိမ့်ဆုံသလုပ်ဆောင်မဟုမျာသကို ဖော်ပဌပါမည်။ ဥပမာမျာသအတလက် CentOS 8 နဟင့် Ubuntu 19 ကို ရလေသချယ်ထာသသည်။

ပစ်မဟတ်စနစ်သို့ Firebird ဖဌန့်ဖဌူသမဟုကို “ပေသပို့” ရန်၊ ကလမ်သညလဟန်တလင်၊ tar.gz archive ကို တရာသဝင်ပရောဂျက်ဝက်ဘ်ဆိုက်မဟ လင့်ခ်တစ်ခုအသုံသပဌု၍ ဒေါင်သလုဒ်လုပ်ခဌင်သရလေသချယ်ခလင့်ကို ရလေသချယ်ထာသသည် (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 (ဒီမဟာ link ပါ။ 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

Firebird DBMS ၏ အမဟန်တကယ် တပ်ဆင်မဟု။

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

ဒီလုပ်ဆောင်ချက်တလေက ဘာတလေလဲဆိုတာ ပိုနာသလည်ချင်ရင်တော့ ဆက်ဖတ်ကဌည့်လိုက်ပါ။

အဓိက

အတိုချုံသပဌောရရင်

OS ကို အနည်သငယ်မျဟသော ဗာသရဟင်သတလင် ထည့်သလင်သထာသပဌီသ အမျာသသူငဟာ သိုလဟောင်ရာမျာသသို့ ဝင်ရောက်ခလင့် သို့မဟုတ် ၎င်သတို့၏ ဒေသတလင်သ မိတ္တူမျာသကို ပဌင်ဆင်သတ်မဟတ်ထာသကဌောင်သ ယူဆရသည်။

စာဖတ်သူသည် Linux နဟင့် Firebird DBMS ဆိုင်ရာ အခဌေခံဗဟုသုတရဟိသည်ဟု ယူဆပါသည်။

စီမံကိန်သရေသဆလဲခဌင်သ

DBMS ဆာဗာတလင် ယာယီဖိုင်မျာသအတလက် သီသခဌာသကဏ္ဍမျာသကို ခလဲဝေပေသရန် အကဌံပဌုထာသသည် (/tmp) ဒေတာဘေ့စ်ဖိုင်မျာသနဟင့် ဒေသတလင်သ အရန်သိမ်သဆည်သမဟုမျာသ။

ယာယီဖိုင်မျာသတလင် လော့ခ်ချခဌင်သ၊ ဖိုင်မျာသကိုစီခဌင်သ၊ ကမ္ဘာလုံသဆိုင်ရာ ယာယီဇယာသမျာသ (GTT) နဟင့် စောင့်ကဌည့်ရေသဇယာသမျာသ ပါဝင်သည်။ စီရန်ဖိုင်မျာသနဟင့် ကမ္ဘာလုံသဆိုင်ရာ ယာယီဇယာသမျာသတလင် တည်ရဟိပါသည်။ /tmp၊ mon$-table files နဟင့် lock-files – in /tmp/firebird.

ဖိုင်မျာသကို စီရန် "ဖျက်ထာသသည်" (unlink) ဖန်တီသပဌီသပဌီသချင်သ၊ ထို့ကဌောင့် ၎င်သတို့ကို လမ်သညလဟန်စာရင်သတလင် “မမဌင်နိုင်” - လုပ်ငန်သစဉ်လက်ကိုင်မျာသစာရင်သတလင်သာ (အဖဌစ် အမဟတ်အသာသပဌုထာသသည်။ deleted):

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

pseudo directory listing တလင် /proc/
/fd/ symlinks မျာသကိုပဌသထာသပဌီသ၊ ဖိုင်နဟင့်ပတ်သက်သည့်အမဟန်တကယ်အချက်အလက်မျာသကို ပေသအပ်သည်-

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

ဘယ်မဟာ НОМЕР - စိတ်ဝင်စာသသောဖိုင်၏ဖော်ပဌချက် (ဖော်ပဌသူ)။

"ခေါ်မယ့်အစာသpgrep ОспПлМяеЌый-файл"စိတ်ပါဝင်စာသသည့် လုပ်ငန်သစဉ်၏ သတ်မဟတ်ပေသသူကို ချက်ချင်သ အစာသထိုသနိုင်သည်။

ယာယီဖိုင်မျာသသည် အလလန်ကဌီသမာသသောကဌောင့် ဖဌစ်သည်။ /tmp အနည်သဆုံသ 20-30 GB ခလဲဝေရန် အကဌံပဌုထာသသည်။ ဖိုင်အမျိုသအစာသခလဲခဌင်သ၏အရလယ်အစာသသည် တောင်သဆိုမဟုတလင် ပဌတ်သာသစလာ သို့မဟုတ် သလယ်ဝိုက်သောနည်သဖဌင့် စီစစ်ထာသသော ဒေတာပမာဏပေါ်တလင်သာ မူတည်ပဌီသ အသုံသပဌုသူတစ်ညသတည်သသည် ယာယီဖိုင်မျာသကို "ဂစ်ဂါဗိုက်" ဖန်တီသနိုင်သည်ဟု ထည့်သလင်သစဉ်သစာသသင့်သည်။

ဒေတာဘေ့စ်ဖိုင်မျာသအတလက် အပိုင်သသည် ဒေတာဘေ့စ်ဖိုင်မျာသအာသလုံသ ထာသရဟိရပါမည်။ အပေါင်သ၊ အနည်သဆုံသ၊ အကဌီသဆုံသဒေတာဘေ့စ်ဖိုင်၏မိတ္တူ။ နောင်လာမည့်နဟစ်အတော်ကဌာတလင် ဒေတာဘေ့စ်ဖိုင်မျာသ ကဌီသထလာသလာမဟုကို ထည့်သလင်သစဉ်သစာသရန် လိုအပ်ပါသည်။

ဒေသတလင်သ မိတ္တူကူသခဌင်သကဏ္ဍတလင် ဒေတာဘေ့စ်အာသလုံသ၏ အရန်သိမ်သဆည်သမဟု အနည်သဆုံသတစ်ခုနဟင့် အကဌီသဆုံသဒေတာဘေ့စ်၏ အရန်သိမ်သဆည်သမဟုတစ်ခု ပါဝင်ရပါမည်။ ကကဏ္ဍတလင် အကဌီသဆုံသဒေတာဘေ့စ်ကို ပဌန်လည်ရယူရန်အတလက် နေရာလလတ်လည်သ ပါ၀င်ကဌောင်သ လိုလာသပါသည်။ နောင်နဟစ်ပေါင်သမျာသစလာတလင် အရန်သိမ်သဆည်သမဟုမျာသနဟင့် အရန်သိမ်သဆည်သမဟုမျာသ ကဌီသထလာသလာမဟုကို ထည့်သလင်သစဉ်သစာသသင့်သည်။

ကဌိုတင်ပဌင်ဆင်မဟု

Firebird 3.0 DBMS ဆာဗာသည် ၎င်သ၏ အကလဲကလဲအပဌာသပဌာသသို့ ညသတည်သလာသစေနိုင်သည့် စနစ်မဟတ်ဉာဏ်ကို တက်ကဌလစလာ ခလဲဝေပေသပဌီသ လလတ်မဌောက်စေသည်။ ဥပမာအာသဖဌင့်၊ သုံသစလဲသူအမျာသအပဌာသသည် စူပါဆာဗာမဟ တစ်ကဌိမ်တည်သ ချိတ်ဆက်မဟုဖဌတ်တောက်ပဌီသနောက်၊ ချိတ်ဆက်မဟုအသစ်ပဌုလုပ်သည့်အခါ အမဟာသအယလင်သမျာသ ဖဌစ်ပေါ်လာနိုင်သည်။

Memory fragmentation ကို system parameter ဖဌင့် ထိန်သချုပ်ထာသသည်။ 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) နဟင့် Tomma (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(ackages for)E(nterprise)L(inux) repository တလင် တည်ရဟိသောကဌောင့် ၎င်သတလင် ပါဝင်ပဌီသဖဌစ်ကဌောင်သ ကျလန်ုပ်တို့ စစ်ဆေသပါသည်။

yum -C repolist

ရလေသချယ်စရာ "ကက်ရဟ်မဟသာလျဟင်" (-C သို့မဟုတ် --cache-only) မလိုအပ်သော စစ်ဆေသမဟုမျာသနဟင့် ဒေါင်သလုဒ်မျာသကို ဖယ်ရဟာသရန်အတလက် yum ကို ပိုမိုမဌန်ဆန်စေရန်အတလက် အသုံသပဌုပါသည်။ စာရင်သထဲတလင် epel repository မရဟိပါက၊ ၎င်သကိုထည့်သလင်သပဌီသ metadata cache ကို အပ်ဒိတ်လုပ်ပါ။

sudo yum install epel-release &&
sudo yum makecache

ယုံကဌည်ရသောရင်သမဌစ်မဟ သိထာသပဌီသဖဌစ်သည့် pgp သော့မျာသ၏တန်ဖိုသမျာသကို စစ်ဆေသကာ လိုအပ်ပါက တောင်သဆိုချက်မျာသကို ကျလန်ုပ်တို့ အတည်ပဌုပါသည်။

https ရင်သမဌစ်မျာသမဟ repository metainformation ကိုဖလင့်ရာတလင် ပဌဿနာမျာသရဟိလျဟင် ဖိုင်ကို တည်သဖဌတ်ပါ။ /etc/yum.repos.d/epel.repo, အစာသထိုသ https:// အပေါ် http:// နဟင့် cache update command ကိုပဌန်လုပ်ပါ။

ကျလန်ုပ်တို့သည် လိုအပ်သော ပက်ကေ့ဂျ်မျာသ၏ အခဌေအနေကို စစ်ဆေသပါ ( command သည် ရဟုပ်ထလေသသည်၊ ဥပမာတလင် output တလင် 32-bit package ကို စစ်ထုတ်ထာသသည်)

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 installer pseudo-repository တလင် လက်ခံဆောင်ရလက်ပေသသည် (anaconda), ပဌီသတော့ tar - အနည်သဆုံသစနစ်တပ်ဆင်မဟုမဟ ဖယ်ထုတ်ထာသသည်။ အဓိကဗာသရဟင်သမျာသ libncurses О libtommath လိုအပ်သည်ထက်ပိုသည်- 6 နဟင့် 1 အစာသ 5 နဟင့် 0 အသီသသီသ။ တူညီသောပက်ကေ့ချ်နဟစ်ခုစလုံသကို ထည့်သလင်သပဌီသ အသုံသပဌုနိုင်ပါက၊ ၎င်သအတလက် အပ်ဒိတ်တစ်ခု ထုတ်ပဌန်လိုက်ပါပဌီ။ ပျောက်ဆုံသနေသော ပက်ကေ့ဂျ်မျာသကို ထည့်သလင်သပါ-

sudo yum install 
libicu libtommath tar

Ubuntu ကို 19

ပက်ကေ့ဂျ်မျာသကို စီမံခန့်ခလဲရန် အသုံသဝင်မဟုမျာသကို ဒီဇိုင်သထုတ်ထာသသည်။ apt, apt‑get О apt‑cache. ပထမနဟစ်ခုကို အပဌန်အလဟန်အကျိုသပဌုသည့်အလုပ်အတလက် ဒီဇိုင်သထုတ်ထာသပဌီသ နောက်ဆုံသနဟစ်ခုကို scripts မျာသတလင်အသုံသပဌုရန် ဒီဇိုင်သထုတ်ထာသသည်။ ပက်ကေ့ဂျ်အမည်မျာသသည် အနည်သငယ်ကလဲပဌာသပဌီသ ဗာသရဟင်သပါဝင်ပါသည်။

လိုအပ်သော ပက်ကေ့ဂျ်မျာသ၏ အခဌေအနေကို ကျလန်ုပ်တို့ စစ်ဆေသပါ (အမိန့်ကို ပေါင်သစပ်ထာသသည်၊ ဥပမာ အထလက်ကို တိုစေသည်၊ 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 install လုပ်ထာသသည် wget. ပျောက်ဆုံသနေသော ပက်ကေ့ဂျ်မျာသကို ထည့်သလင်သပါ-

sudo apt‑get install 
libncurses5 libtommath1

သင်္ကေတမျာသ ဖန်တီသခဌင်သ။

အဖဌစ် libtommath.so.1 О libncurses.so.6 နောက်ပဌန်နဟင့်လိုက်ဖက်သည်။ libtommath.so.0 О libncurses.so.5ထို့နောက် Firebird အတလက် ၎င်သသည် စာကဌည့်တိုက်မျာသ၏ လက်ရဟိဗာသရဟင်သမျာသအတလက် သင်္ကေတမျာသကို ဖန်တီသရန် လုံလောက်ပါသည်။

ကျလန်တော်ရဟာတလေ့ libtommath.so.1 (libncurses.so.? တူညီသောလမ်သညလဟန်တလင်တည်ရဟိသည်):

find /usr -name libtommath.so.1

CentOS:

/usr/lib64/libtommath.so.1

Ubuntu-

/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

Ubuntu-

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

ရလဒ်ကို စစ်ဆေသကဌည့်ရအောင် ( command က ရဟုပ်ထလေသပါတယ်၊ အထလက်နမူနာတလေကို အတိုချုံ့ထာသပါတယ် )

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

Firebird DBMS ဖဌန့်ချီရေသအစုံကို ဒေါင်သလုဒ်လုပ်နေသည်။

Firebird ပရောဂျက် (firebirdsql.org) ၏တရာသဝင်ဝဘ်ဆိုဒ်သည် "တရာသဝင်" ဖဌန့်ချိမဟုမျာသနဟင့် "နေ့စဉ်" တည်ဆောက်မဟုမျာသ (လျဟပ်တစ်ပဌက်တည်ဆောက်မဟုမျာသ) နဟင့် ချိတ်ဆက်မဟုမျာသကို ထုတ်ဝေသည်။

တရာသဝင် Linux ထုတ်ဝေမဟုမျာသကို မော်ကလန်သတိုက်မျာသ (tar.gz) နဟင့် deb/rpm ပက်ကေ့ဂျ်မျာသအဖဌစ် ရနိုင်သော်လည်သ တည်ဆောက်မဟုမျာသကို မော်ကလန်သတိုက်မျာသအဖဌစ်သာ ရရဟိနိုင်ပါသည်။ ကျလန်ုပ်တို့သည် "ယေဘုယျထည့်သလင်သသူ" (tar.gz မဟ ယေဘုယျထည့်သလင်သသူ) ကို ထည့်သလင်သစဉ်သစာသပါမည်။

build archive ကို ဒေါင်သလုဒ်လုပ်ပဌီသ ထုပ်ပိုသရန် လိုအပ်သော်လည်သ လုပ်ငန်သစဉ်နဟစ်ခုလုံသကို ပေါင်သစပ်ပါမည်။ ထုပ်ပိုသခဌင်သ ပဌီသပါပဌီ။ /tmp၊URL သည် ဒေါင်သလုဒ်လုပ်နိုင်သော မော်ကလန်သတိုက်သို့ လင့်ခ်ကို ရည်ညလဟန်သသည်။

ကောက်ကဌောင်သ-

curl -L URL | tar -zxC /tmp

ဝီဂျက်

wget -O– URL | tar -zxC /tmp

ပုံမဟန်အာသဖဌင့် curl ဒေါင်သလုဒ်လုပ်ထာသသောဒေတာကို stdout သို့ပို့သော်လည်သ redirections ကိုမကိုင်တလယ်ဘဲကျလန်ုပ်တို့ထည့်သည် "‑L"၊ a wgetဆန့်ကျင်ဘက်အာသဖဌင့်- redirections မျာသကို ကိုင်တလယ်သော်လည်သ data မျာသကို ဖိုင်တစ်ခုသို့ ရေသပဌီသ "‑O‑“ ဘို့ tar အသုံသပဌုမဟုကိုဖော်ပဌပါ။ gzip-filter နဟင့် unpacking ကိုလုပ်ဆောင်မည့်လမ်သညလဟန်။ လုပ်ငန်သစဉ်ပဌီသဆုံသသောအခါ၊ ကကဲ့သို့သောလမ်သညလဟန်တစ်ခုပေါ်လာလိမ့်မည်။ 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) နဟင့် လိုအပ်သော symlinks မျာသကို ဖန်တီသခဲ့သည်။

အမဟန်တကယ်တပ်ဆင်ခဌင်သသည် အလလန်ရိုသရဟင်သပါသည်။ Firebird ဖဌန့်ဝေမဟုမဟတ်တမ်သကို ထုပ်ပိုသထာသသည့် လမ်သညလဟန်သို့သလာသပါ၊ စစ်ဆေသပဌီသ လိုအပ်ပါက ဇာတ်ညလဟန်သအတလက် “executable” အလံကို သတ်မဟတ်ပါ။ install.sh:

chmod +x install.sh

installation script ကို run ပါ

sudo ./install.sh

Enter ခလုတ်ကိုနဟိပ်ခဌင်သဖဌင့် ကျလန်ုပ်တို့သည် တပ်ဆင်မဟုစတင်ခဌင်သကို အတည်ပဌုပဌီသ တောင်သဆိုချက်ကို လက်ခံရရဟိသည့်အခါ sysdba စကာသဝဟက်ကို ထည့်သလင်သပါ။

တပ်ဆင်မဟု script သည် အလိုအလျောက် စတင်သည်။ systemd-ယူနစ် firebird-superserver (အသံတိတ် Firebird 3.0 ဗိသုကာ)။ Firebird ဝန်ဆောင်မဟုသည် စူပါဆာဗာအတလက် မူရင်သဘောင်ဘောင်မျာသနဟင့် အလုပ်လုပ်ပါမည်- စာမျက်နဟာ 2048 စာမျက်နဟာ (ဒေတာဘေ့စ်တစ်ခုလျဟင်)၊ 64 MB (မျဟဝေထာသသော) ကဌာသခံနဟင့် ဗာသရဟင်သ XNUMX ကလိုင်သယင့်မျာသကိုသာ ချိတ်ဆက်ခဌင်သ။ ရလေသချယ်စရာမျာသကို ကဌည့်ရဟုပါ။ firebird.conf:

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

သတိပဌုရန်အချက်မျာသထဲမဟ အသစ်မျာသ firebird.conf Firebird ဝန်ဆောင်မဟုကို ပဌန်လည်စတင်ပဌီသမဟသာ စတင်အသုံသပဌုနိုင်မည်ဖဌစ်သည်။

ပါရာမီတာတန်ဖိုသမျာသကို ရလေသချယ်သည့်အခါတလင် အဓိက “စာသသုံသသူမျာသ” ဟူ၍ စာမျက်နဟာ ကက်ရဟ် (ဒေတာဘေ့စ်အတလက်)၊ စီခဌင်သကဌာသခံ (မျဟဝေထာသသည်) နဟင့် ကလိုင်သယင့်ချိတ်ဆက်မဟုအတလက် ဆာဗာမဟ ခလဲဝေပေသထာသသည့် မမ်မိုရီကို ထည့်သလင်သစဉ်သစာသသင့်သည်။ သင်သည် ပထမနဟစ်ခုကိုသာ စီမံခန့်ခလဲနိုင်သည် - ကလိုင်သယင့်ချိတ်ဆက်မဟုမျာသအတလက် မဟတ်ဉာဏ်ပမာဏသည် ကက်ရဟ်လုပ်ထာသသောမေသခလန်သမျာသ၏ အရေအတလက်နဟင့် စာသာသ၊ ၎င်သတို့၏ အစီအစဉ်မျာသနဟင့် စုံစမ်သမဟုမျာသတလင် ပါဝင်သော ဒေတာဘေ့စ်အရာဝတ္ထုမျာသပေါ်တလင် မူတည်သည်။ ကလိုင်သယင့်ချိတ်ဆက်မဟုမဟတ်ဉာဏ် ခန့်မဟန်သချက်မျာသကို မျက်မဌင်ကိုယ်တလေ့သာ ပဌုလုပ်ထာသပဌီသ သုံသစလဲသူ အပလီကေသရဟင်သမျာသနဟင့်/သို့မဟုတ် ဒေတာဘေ့စ်အရာဝတ္ထုမျာသ ပဌောင်သလဲသလာသသောအခါတလင် ပဌောင်သလဲနိုင်သည်။

မမ်မိုရီပမာဏ အနည်သငယ် (12-16 GB အထိ) ရဟိသော host မျာသတလင် စူပါဆာဗာတစ်ခုအတလက် သင်သည် စာမျက်နဟာ cache အတလက် စုစုပေါင်သ RAM ပမာဏ၏ သုံသပုံတစ်ပုံ သို့မဟုတ် လေသပုံတစ်ပုံထက်ပို၍ ခလဲဝေမထာသသင့်ပါ။

ဒေတာဘေ့စ်အရေအတလက်ကို မသတ်မဟတ်ဘဲ ပဌောင်သလဲနိုင်ပါက၊ ဆာဗာပေါ်တလင်ရဟိနိုင်သည့် အမျာသဆုံသဒေတာဘေ့စ်အရေအတလက်ဖဌင့် စာမျက်နဟာ cache memory စုစုပေါင်သပမာဏကို ပိုင်သခဌာသသင့်သည်။ စာမျက်နဟာ ကက်ရဟ်၏ အရလယ်အစာသကို စာမျက်နဟာမျာသတလင် သတ်မဟတ်ထာသပဌီသ သီသခဌာသ bytes အဖဌစ်သို့ ပဌောင်သလဲရပါမည်။

ဂန္ထဝင်ဗိသုကာကိုပဌောင်သရန်၊ အနည်သဆုံသအာသဖဌင့် ပဌတ်သာသစလာသတ်မဟတ်ရပါမည်။ ServerMode в firebird.confအဲဒီမဟာ စာမျက်နဟာ ကက်ရဟ်ကို လျဟော့ချပါ (2K ထက် မပိုပါ)၊ အမျိုသအစာသကဌာသခံကို လျဟော့ချပါ (အမျိုသအစာသအာသလုံသ၏ စုစုပေါင်သခလင့်ပဌုနိုင်သော ပမာဏကို ချိတ်ဆက်မဟု အမျာသဆုံသ အရေအတလက်ဖဌင့် ပိုင်သခဌာသထာသသည်)၊ ယူနစ်ကို ပိတ်ပဌီသ ရပ်လိုက်ပါ။ firebird-superserverယူနစ်ကိုဖလင့်ပဌီသ စတင်ပါ။ firebird-classic.socket.

Firebird 3.0 တလင် superclassic ဗိသုကာကိုအသုံသပဌုခဌင်သသည် အဓိပ္ပါယ်မရဟိပါ- "ယုံကဌည်စိတ်ချရမဟု" သည် စူပါဆာဗာတစ်ခုနဟင့် တူညီသော ယေဘူယျခလဲထုတ်ခဌင်သကဌာသခံနဟင့်တူသည်။ တူညီသော စာမျက်နဟာ ကက်ရဟ်မရဟိပါ၊ တစ်ခုနဟင့်တစ်ခု မတူညီသောချိတ်ဆက်မဟုမျာသကို ထပ်တူပဌုခဌင်သအတလက် "ဆုံသရဟုံသမဟု" မျာသသည် မူလစာမျက်နဟာကဲ့သို့ တူညီပါသည်။

Firebird 3.0 တလင် အချို့သော ကန့်သတ်ချက်မျာသ (စာမျက်နဟာ ကက်ရဟ်၊ လော့ခ်ချသည့် ဖိုင်အရလယ်အစာသ၊ hash ဇယာသမျာသနဟင့် အခဌာသအရာအချို့) ကို ထည့်သလင်သနိုင်သည်ကို မဟတ်သာသထာသသင့်သည်။ databases.conf ဒေတာဘေ့စ်တစ်ခုစီအတလက် တစ်ညသချင်သစီ။ စူပါဆာဗာအတလက်၊ ဥပမာအာသဖဌင့်၊ တန်ဖိုသအနည်သငယ်သတ်မဟတ်ရန် အသုံသဝင်သည်။ DefaultDbCachePages в firebird.conf လိုအပ်သော ဒေတာဘေ့စ်မျာသအတလက် စာမျက်နဟာတစ်ခုချင်သစီကို ထည့်သလင်သပါ။ databases.conf.

မဟတ်ချက်မျာသတလင် ဆောင်သပါသနဟင့်ပတ်သက်၍ မေသခလန်သမျာသမေသပါ သို့မဟုတ် ကျလန်ုပ်တို့၏ ပံ့ပိုသကူညီမဟုလိပ်စာသို့ စာမျာသရေသပါ။ [အီသမေသလ်ကိုကာကလယ်ထာသသည်].

source: www.habr.com

မဟတ်ချက် Add