Hvernig á að setja upp PostgreSQL 10 með því að nota frumkóða í Linux


PostgreSQL einnig kallað Postgres er öflugt og opinn uppspretta gagnagrunnskerfi sem tengist hlutum. Þetta er gagnagrunnur á fyrirtækisstigi sem hefur eiginleika eins og að skrifa fyrirfram skráningu fyrir bilanaþol, ósamstillta afritun, Multi-Version Concurrency Control (MVCC), afrit á netinu/heitt afrit, endurheimt tímapunkts, skipuleggjandi/fínstillingu fyrirspurna, borðrými, hreiður færslur (vistunarpunktar) ) o.s.frv.

Postgres hefur nýjustu útgáfu 10 sína gefin út 5. október 2017 af postgres alþjóðlegum þróunarhópi.

Eiginleikar nýrrar útgáfu eru sem hér segir:

  • Rökrétt afritun: Þessi eiginleiki gerir kleift að afrita einstaka gagnagrunnshluti (hvort sem það eru raðir, töflur eða sértækar gagnagrunnar) yfir biðþjóna. Það veitir meiri stjórn á afritun gagna. Útfært með því að nota útgefanda-áskrifendalíkan.
  • Quorum Commit for Synchronous Replication: Í þessum eiginleika getur dba nú tilgreint fjölda biðstaða sem staðfesta að breytingarnar á gagnagrunninum hafi verið gerðar, svo að gögn geti talist örugglega skrifuð.
  • SCRAM-SHA-256 auðkenning: Aukið öryggi en núverandi MD5-undirstaða auðkenningar og geymsla með lykilorði.
  • Bætt framkvæmd samhliða fyrirspurna.
  • Skýrandi töfluskipting.
  • Stuðningur við fullan textaleit fyrir JSON og JSONB.

Í þessari grein munum við útskýra hvernig á að setja upp PostgreSQL 10 með því að nota frumkóðauppsetningu í Linux kerfum. Þeir sem leita að auðveldri uppsetningu frá dreifingarpakkastjóra geta fylgst með þessum leiðbeiningum hér að neðan.

  1. Hvernig á að setja upp PostgreSQL 10 á CentOS/RHEL og Fedora
  2. Hvernig á að setja upp PostgreSQL 10 á Debian og Ubuntu

Settu upp PostgreSQL með því að nota frumkóða

Þar sem postgres er opinn gagnagrunnur er hægt að byggja hann upp úr frumkóða í samræmi við þarfir/kröfur manns. við getum sérsniðið smíða- og uppsetningarferlið með því að bjóða upp á einn eða fleiri skipanalínuvalkosti fyrir ýmsa viðbótareiginleika.

Helsti kosturinn við að nota uppsetningu frumkóða er að hægt er að aðlaga hann mjög við uppsetningu.

1. Settu fyrst upp nauðsynlegar forsendur eins og gcc, readline-devel og zlib-devel með því að nota pakkastjórann eins og sýnt er.

# yum install gcc zlib-devel readline-devel     [On RHEL/CentOS]
# apt install gcc zlib1g-dev libreadline6-dev   [On Debian/Ubuntu]

2. Sæktu frumkóðann tar skrána frá opinberu wget skipuninni beint á kerfið.

# wget https://ftp.postgresql.org/pub/source/v10.0/postgresql-10.0.tar.bz2

3. Notaðu tar skipunina til að draga út niðurhalaða tarball skrána. Ný möppu sem heitir postgresql-10.0 verður búin til.

# tar -xvf postgresql-10.0.tar.bz2
# ll
total 19236
-rw-------. 1 root root      933 Mar 18  2015 anaconda-ks.cfg
-rw-r--r--. 1 root root     8823 Mar 18  2015 install.log
-rw-r--r--. 1 root root     3384 Mar 18  2015 install.log.syslog
drwxrwxrwx  6 1107 1107     4096 Oct  3  2017 postgresql-10.0
-rw-r--r--  1 root root 19639147 Oct  3  2017 postgresql-10.0.tar.bz2

4. Næsta skref fyrir uppsetningarferlið er að stilla niðurhalaða frumkóðann með því að velja valkostina í samræmi við þarfir þínar.

# cd postgresql-10.0

notaðu ./configure --help til að fá hjálp um ýmsa valkosti.

# ./configure --help

Defaults for the options are specified in brackets.
Configuration:
  -h, --help              display this help and exit
      --help=short        display options specific to this package
      --help=recursive    display the short help of all the included packages
  -V, --version           display version information and exit
  -q, --quiet, --silent   do not print `checking ...' messages
      --cache-file=FILE   cache test results in FILE [disabled]
  -C, --config-cache      alias for `--cache-file=config.cache'
  -n, --no-create         do not create output files
      --srcdir=DIR        find the sources in DIR [configure dir or `..']

Installation directories:
  --prefix=PREFIX         install architecture-independent files in PREFIX
                          [/usr/local/pgsql]
  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
                          [PREFIX]

5. Búðu til möppu þar sem þú vilt setja upp postgres skrár og notaðu forskeyti með stillingu.

# mkdir /opt/PostgreSQL-10/
# ./configure --prefix=/opt/PostgreSQL-10
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking which template to use... linux
checking whether NLS is wanted... no
checking for default port number... 5432
checking for block size... 8kB
checking for segment size... 1GB
checking for WAL block size... 8kB
checking for WAL segment size... 16MB
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc supports -Wdeclaration-after-statement... yes
checking whether gcc supports -Wendif-labels... yes
checking whether gcc supports -Wmissing-format-attribute... yes
checking whether gcc supports -Wformat-security... yes
checking whether gcc supports -fno-strict-aliasing... yes
checking whether gcc supports -fwrapv... yes
checking whether gcc supports -fexcess-precision=standard... no
....

6. Eftir uppsetningu, næst munum við byrja að byggja postgreSQL með því að nota eftirfarandi make skipun.

# make

Eftir að byggingarferlinu lýkur skaltu setja upp postgresql með eftirfarandi skipun.

# make install

Postgresql 10 hefur verið sett upp í /opt/PostgreSQL-10 skránni.

7. Búðu til postgres notanda og möppu til að nota sem gagnaskrá til að frumstilla gagnagrunnsklasa. Eigandi þessarar gagnaskrár ætti að vera postgres notandi og heimildir ættu að vera 700 og einnig setja slóð fyrir postgresql tvöfalda til að auðvelda okkur.

# useradd postgres
# passwd postgres
# mkdir /pgdatabase/data
# chown -R postgres. /pgdatabase/data
# echo 'export PATH=$PATH:/opt/PostgreSQL-10/bin' > /etc/profile.d/postgres.sh

8. Frumstillaðu nú gagnagrunn með því að nota eftirfarandi skipun sem postgres notandi áður en þú notar postgres skipanir.

# su postgres
$ initdb -D /pgdatabase/data/ -U postgres -W

Þar sem -D er staðsetning fyrir þennan gagnagrunnsklasa eða við getum sagt að það sé gagnaskrá þar sem við viljum frumstilla gagnagrunnsklasa, -U fyrir ofurnotandanafn gagnagrunns og - W fyrir lykilorðshvetjandi fyrir db ofurnotanda.

Fyrir frekari upplýsingar og valkosti getum við vísað til initdb –help.

9. Eftir að hafa frumstillt gagnagrunn skaltu ræsa gagnagrunnsþyrpinguna eða ef þú þarft að breyta höfn eða hlusta vistfangi fyrir þjóninn, breyttu postgresql.conf skránni í gagnaskrá gagnagrunnsþjónsins.

$ pg_ctl -D /pgdatabase/data/ -l /pglog/db_logs/start.log start

10. Eftir að gagnagrunnurinn er hafinn, staðfestu stöðu postgres miðlaraferlisins með því að nota eftirfarandi skipanir.

$ ps -ef |grep -i postgres
$ netstat -apn |grep -i 51751

Við sjáum að gagnagrunnsþyrpingin gengur vel og ræsingarskrár má finna á þeim stað sem tilgreindur er með -l valmöguleikanum þegar gagnagrunnsþyrpingin er ræst.

11. Tengstu nú við gagnagrunnsþyrpinguna og búðu til gagnagrunn með því að nota eftirfarandi skipanir.

$ psql -p 51751
postgres=# create database test;
postgres=# \l to list all databases in cluster
postgres=# \q to quit form postgres console

Það er það! í næstu greinum okkar mun ég fjalla um stillingar, afritunaruppsetningu og uppsetningu á pgAdmin tólinu, þangað til fylgstu með Tecmint.