17.3. ÐапÑÑк ÑеÑвеÑа баз даннÑÑ
Ðажно
ÐÑи ÑÑÑановке двоиÑнÑÑ
пакеÑов в ÑиÑÑемаÑ
Linux Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ
по ÑмолÑÐ°Ð½Ð¸Ñ ÑаÑполагаÑÑÑÑ Ð² каÑалоге /var/lib/pgpro/std-15/data, еÑли Ñвно не бÑÐ´ÐµÑ Ð·Ð°Ð´Ð°Ð½ дÑÑгой каÑалог. Ðа подÑобноÑÑÑми обÑаÑиÑеÑÑ Ðº РазделÑ 16.1.
ЧÑÐ¾Ð±Ñ ÐºÑо-либо Ñмог обÑаÑиÑÑÑÑ Ðº базе даннÑÑ
, необÑ
одимо ÑнаÑала запÑÑÑиÑÑ ÑеÑÐ²ÐµÑ Ð±Ð°Ð· даннÑÑ
. ÐÑогÑамма ÑеÑвеÑа назÑваеÑÑÑ postgres.
ÐÑли Ð²Ñ Ð¸ÑполÑзÑеÑе PostgreSQL в виде гоÑового пÑодÑкÑа, в нÑм навеÑнÑка Ñеализована возможноÑÑÑ Ð·Ð°Ð¿ÑÑка ÑеÑвеÑа в виде Ñонового Ð·Ð°Ð´Ð°Ð½Ð¸Ñ Ñак, как ÑÑо пÑинÑÑо в ваÑей опеÑаÑионной ÑиÑÑеме. ÐÑполÑзоваÑÑ Ð¿ÑедоÑÑавленнÑÑ Ð¿ÑодÑкÑом инÑÑаÑÑÑÑкÑÑÑÑ Ð´Ð»Ñ Ð·Ð°Ð¿ÑÑка ÑеÑвеÑа гоÑаздо пÑоÑе, Ñем пÑÑаÑÑÑÑ ÑазобÑаÑÑÑÑ, как ÑÑо ÑделаÑÑ ÑамоÑÑоÑÑелÑно. Ðа подÑобноÑÑÑми обÑаÑиÑеÑÑ Ðº докÑменÑаÑии иÑполÑзÑемого вами пÑодÑкÑа.
СамÑй пÑÑмолинейнÑй ваÑÐ¸Ð°Ð½Ñ Ð·Ð°Ð¿ÑÑка ÑеÑвеÑа вÑÑÑнÑÑ â пÑоÑÑо вÑполниÑÑ Ð½ÐµÐ¿Ð¾ÑÑедÑÑвенно postgres, Ñказав ÑаÑположение каÑалога даннÑÑ
в клÑÑе -D, напÑимеÑ:
$ postgres -D /usr/local/pgsql/data
Ð ÑезÑлÑÑаÑе ÑеÑÐ²ÐµÑ Ð¿ÑÐ¾Ð´Ð¾Ð»Ð¶Ð¸Ñ ÑабоÑÑ Ð½Ð° пеÑеднем плане. ÐапÑÑкаÑÑ ÑÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ ÑледÑÐµÑ Ð¿Ð¾Ð´ именем ÑÑÑÑной запиÑи Postgres Pro. Ðез паÑамеÑÑа -D ÑеÑÐ²ÐµÑ Ð¿Ð¾Ð¿ÑÑаеÑÑÑ Ð¸ÑполÑзоваÑÑ ÐºÐ°Ñалог даннÑÑ
, ÑказаннÑй в пеÑеменной окÑÑÐ¶ÐµÐ½Ð¸Ñ PGDATA. ÐÑли и ÑÑа пеÑÐµÐ¼ÐµÐ½Ð½Ð°Ñ Ð½Ðµ опÑеделена, ÑеÑÐ²ÐµÑ Ð½Ðµ запÑÑÑиÑÑÑ.
Ðднако обÑÑно лÑÑÑе запÑÑкаÑÑ postgres в Ñоновом Ñежиме. ÐÐ»Ñ ÑÑого можно пÑимениÑÑ Ð¾Ð±ÑÑнÑй ÑинÑакÑиÑ, пÑинÑÑÑй в оболоÑке Unix:
$ postgres -D /usr/local/pgsql/data >logfile 2>&1 &
Ðажно где-либо ÑÐ¾Ñ ÑанÑÑÑ Ð¸Ð½ÑоÑмаÑиÑ, коÑоÑÑÑ Ð²ÑÐ²Ð¾Ð´Ð¸Ñ ÑеÑÐ²ÐµÑ Ð² ÐºÐ°Ð½Ð°Ð»Ñ stdout и stderr, как показано вÑÑе. ÐÑо полезно и Ð´Ð»Ñ Ñелей аÑдиÑа, и Ð´Ð»Ñ Ð´Ð¸Ð°Ð³Ð½Ð¾ÑÑики пÑоблем. (Ðолее глÑбоко ÑабоÑа Ñ Ñайлами жÑÑналов ÑаÑÑмаÑÑиваеÑÑÑ Ð² Разделе 23.3.)
ÐÑогÑамма postgres Ñакже пÑÐ¸Ð½Ð¸Ð¼Ð°ÐµÑ Ð½ÐµÑколÑко дÑÑгиÑ
паÑамеÑÑов командной ÑÑÑоки. Ðа дополниÑелÑнÑми ÑведениÑми обÑаÑиÑеÑÑ Ðº ÑпÑавоÑной ÑÑÑаниÑе postgres и к ÑледÑÑÑей Ðлаве 18.
Такой ваÑÐ¸Ð°Ð½Ñ Ð·Ð°Ð¿ÑÑка доволÑно бÑÑÑÑо Ð¼Ð¾Ð¶ÐµÑ Ð¾ÐºÐ°Ð·Ð°ÑÑÑÑ Ð½ÐµÑдобнÑм. ÐоÑÑÐ¾Ð¼Ñ Ð´Ð»Ñ ÑпÑоÑÐµÐ½Ð¸Ñ Ð¿Ð¾Ð´Ð¾Ð±Ð½ÑÑ Ð·Ð°Ð´Ð°Ñ Ð¿ÑедлагаеÑÑÑ Ð²ÑпомогаÑелÑÐ½Ð°Ñ Ð¿ÑогÑамма pg_ctl. ÐапÑимеÑ:
pg_ctl start -l logfile
запÑÑÑÐ¸Ñ ÑеÑÐ²ÐµÑ Ð² Ñоновом Ñежиме и напÑÐ°Ð²Ð¸Ñ Ð²ÑводимÑе ÑообÑÐµÐ½Ð¸Ñ ÑеÑвеÑа в ÑказаннÑй Ñайл жÑÑнала. ÐаÑамеÑÑ -D Ð´Ð»Ñ Ð½ÐµÑ Ð¸Ð¼ÐµÐµÑ Ñо же знаÑение, ÑÑо и Ð´Ð»Ñ Ð¿ÑогÑÐ°Ð¼Ð¼Ñ postgres. С помоÑÑÑ pg_ctl Ñакже можно оÑÑановиÑÑ ÑеÑвеÑ.
ÐбÑÑно Ð²Ð¾Ð·Ð½Ð¸ÐºÐ°ÐµÑ Ð¶ÐµÐ»Ð°Ð½Ð¸Ðµ, ÑÑÐ¾Ð±Ñ ÑеÑÐ²ÐµÑ Ð±Ð°Ð· даннÑÑ
Ñам запÑÑкалÑÑ Ð¿Ñи загÑÑзке опеÑаÑионной ÑиÑÑемÑ. СкÑипÑÑ Ð°Ð²ÑозапÑÑка Ð´Ð»Ñ ÑазнÑÑ
ÑиÑÑем ÑазнÑе, но в ÑоÑÑаве PostgreSQL пÑедлагаеÑÑÑ Ð½ÐµÑколÑко ÑиповÑÑ
ÑкÑипÑов в каÑалоге contrib/start-scripts. ÐÐ»Ñ ÑÑÑановки Ñакого ÑкÑипÑа в ÑиÑÑÐµÐ¼Ñ ÑÑебÑÑÑÑÑ Ð¿Ñава root.
Ð ÑазлиÑнÑÑ
ÑиÑÑемаÑ
пÑинÑÑÑ ÑазнÑе ÑоглаÑÐµÐ½Ð¸Ñ Ð¾ поÑÑдке запÑÑка ÑлÑжб в пÑоÑеÑÑе загÑÑзки. Ðо многиÑ
ÑиÑÑемаÑ
Ð´Ð»Ñ ÑÑого иÑполÑзÑеÑÑÑ Ñайл /etc/rc.local или /etc/rc.d/rc.local. РдÑÑгиÑ
пÑименÑÑÑÑÑ ÐºÐ°Ñалоги init.d или rc.d. Ðднако пÑи лÑбом ваÑианÑе запÑÑкаÑÑÑÑ ÑеÑÐ²ÐµÑ Ð´Ð¾Ð»Ð¶ÐµÐ½ Ð¾Ñ Ð¸Ð¼ÐµÐ½Ð¸ полÑзоваÑÐµÐ»Ñ Postgres Pro, но не root или какого-либо дÑÑгого полÑзоваÑелÑ. ÐоÑÑÐ¾Ð¼Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ñ Ð·Ð°Ð¿ÑÑка обÑÑно ÑледÑÐµÑ Ð·Ð°Ð¿Ð¸ÑÑваÑÑ Ð² ÑоÑме su postgres -c '...'. ÐапÑимеÑ:
su postgres -c 'pg_ctl start -D /usr/local/pgsql/data -l serverlog'
Ðиже пÑÐ¸Ð²ÐµÐ´ÐµÐ½Ñ Ð±Ð¾Ð»ÐµÐµ конкÑеÑнÑе пÑÐµÐ´Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ð½ÐµÑколÑÐºÐ¸Ñ Ð¾ÑновнÑÑ ÐС. (ÐмеÑÑо ÑказаннÑÑ Ð½Ð°Ð¼Ð¸ ÑаблоннÑÑ Ð·Ð½Ð°Ñений Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ подÑÑавиÑÑ Ð¿ÑавилÑнÑй пÑÑÑ Ðº каÑÐ°Ð»Ð¾Ð³Ñ Ð´Ð°Ð½Ð½ÑÑ Ð¸ ÑакÑиÑеÑкое Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑзоваÑелÑ.)
ÐÐ»Ñ Ð·Ð°Ð¿ÑÑка во FreeBSD воÑполÑзÑйÑеÑÑ Ñайлом
contrib/start-scripts/freebsdв деÑеве иÑÑ Ð¾Ð´Ð½Ð¾Ð³Ð¾ кода PostgreSQL.Ð OpenBSD, добавÑÑе в Ñайл
/etc/rc.localÑледÑÑÑие ÑÑÑоки:if [ -x /usr/local/pgsql/bin/pg_ctl -a -x /usr/local/pgsql/bin/postgres ]; then su -l postgres -c '/usr/local/pgsql/bin/pg_ctl start -s -l /var/postgresql/log -D /usr/local/pgsql/data' echo -n ' postgresql' fiÐ ÑиÑÑÐµÐ¼Ð°Ñ Linux можно добавиÑÑ
/usr/local/pgsql/bin/pg_ctl start -l logfile -D /usr/local/pgsql/data
в
/etc/rc.d/rc.localили/etc/rc.local.ÐÑполÑзÑÑ systemd, Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе пÑимениÑÑ ÑледÑÑÑий Ñайл опиÑÐ°Ð½Ð¸Ñ ÑлÑÐ¶Ð±Ñ (напÑимеÑ,
/etc/systemd/system/postgresql.service):[Unit] Description=Postgres Pro database server Documentation=man:postgres(1) After=network-online.target Wants=network-online.target [Service] Type=notify User=postgres ExecStart=/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data ExecReload=/bin/kill -HUP $MAINPID KillMode=mixed KillSignal=SIGINT TimeoutSec=infinity [Install] WantedBy=multi-user.target
ÐÐ»Ñ Ð¸ÑполÑзованиÑ
Type=notifyÑÑебÑеÑÑÑ, ÑÑÐ¾Ð±Ñ ÑеÑÐ²ÐµÑ Ð±Ñл ÑкомпилиÑован Ñ Ñказаниемconfigure --with-systemd.ÐÑобого Ð²Ð½Ð¸Ð¼Ð°Ð½Ð¸Ñ Ð·Ð°ÑлÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð·Ð½Ð°Ñение Ñайм-аÑÑа. Ðа Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð½Ð°Ð¿Ð¸ÑÐ°Ð½Ð¸Ñ ÑÑой докÑменÑаÑии по ÑмолÑÐ°Ð½Ð¸Ñ Ð² systemd пÑинÑÑ Ñайм-аÑÑ 90 ÑекÑнд, Ñак ÑÑо пÑоÑеÑÑ, не ÑообÑивÑий о Ñвоей гоÑовноÑÑи за ÑÑо вÑемÑ, бÑÐ´ÐµÑ ÑниÑÑожен. Ðо ÑеÑвеÑÑ Postgres Pro пÑи запÑÑке Ð¼Ð¾Ð¶ÐµÑ Ð¿Ð¾ÑÑебоваÑÑÑÑ Ð²ÑполниÑÑ Ð²Ð¾ÑÑÑановление поÑле ÑбоÑ, Ñак ÑÑо пеÑÐµÑ Ð¾Ð´ в ÑоÑÑоÑние гоÑовноÑÑи Ð¼Ð¾Ð¶ÐµÑ Ð·Ð°Ð½ÑÑÑ Ð³Ð¾Ñаздо болÑÑе вÑемени. ÐÑедлагаемое знаÑение
infinityоÑклÑÑÐ°ÐµÑ Ð»Ð¾Ð³Ð¸ÐºÑ Ñайм-аÑÑа.Ð NetBSD можно иÑполÑзоваÑÑ ÑкÑÐ¸Ð¿Ñ Ð·Ð°Ð¿ÑÑка Ð´Ð»Ñ FreeBSD или Ð´Ð»Ñ Linux, в завиÑимоÑÑи Ð¾Ñ Ð¿ÑедпоÑÑений.
Ð Solaris, ÑоздайÑе Ñайл Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼
/etc/init.d/postgresql, ÑодеÑжаÑий ÑледÑÑÑÑÑ ÑÑокÑ:su - postgres -c "/usr/local/pgsql/bin/pg_ctl start -l logfile -D /usr/local/pgsql/data"
ÐаÑем ÑоздайÑе ÑимволиÑеÑкÑÑ ÑÑÑÐ»ÐºÑ Ð½Ð° него в каÑалоге
/etc/rc3.dÑ Ð¸Ð¼ÐµÐ½ÐµÐ¼S99postgresql.
Ðогда ÑеÑÐ²ÐµÑ ÑабоÑаеÑ, иденÑиÑикаÑÐ¾Ñ ÐµÐ³Ð¾ пÑоÑеÑÑа (PID) ÑоÑ
ÑанÑеÑÑÑ Ð² Ñайле postmaster.pid в каÑалоге даннÑÑ
. ÐÑо позволÑÐµÑ Ð¸ÑклÑÑиÑÑ Ð·Ð°Ð¿ÑÑк неÑколÑкиÑ
ÑкземплÑÑов ÑеÑвеÑа Ñ Ð¾Ð´Ð½Ð¸Ð¼ каÑалогом даннÑÑ
, а Ñакже Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿Ð¾Ð»ÐµÐ·Ð½Ð¾ Ð´Ð»Ñ Ð²ÑклÑÑÐµÐ½Ð¸Ñ ÑеÑвеÑа.
17.3.1. Сбои пÑи запÑÑке ÑеÑвеÑа
ÐÑÑÑ Ð½ÐµÑколÑко ÑаÑпÑоÑÑÑанÑннÑÑ Ð¿ÑиÑин, по коÑоÑÑм ÑеÑÐ²ÐµÑ Ð¼Ð¾Ð¶ÐµÑ Ð½Ðµ запÑÑÑиÑÑÑÑ. ЧÑÐ¾Ð±Ñ Ð¿Ð¾Ð½ÑÑÑ, Ñем вÑзван Ñбой, пÑоÑмоÑÑиÑе Ñайл жÑÑнала ÑеÑвеÑа или запÑÑÑиÑе ÑеÑÐ²ÐµÑ Ð²ÑÑÑнÑÑ (не пеÑенапÑавлÑÑ ÐµÐ³Ð¾ поÑоки ÑÑандаÑÑного вÑвода и оÑибок) и пÑоанализиÑÑйÑе вÑводимÑе ÑообÑениÑ. Ðиже Ð¼Ñ ÑаÑÑмоÑÑим некоÑоÑÑе из наиболее ÑаÑÑÑÑ ÑообÑений об оÑÐ¸Ð±ÐºÐ°Ñ Ð±Ð¾Ð»ÐµÐµ подÑобно.
LOG: could not bind IPv4 address "127.0.0.1": Address already in use HINT: Is another postmaster already running on port 5432? If not, wait a few seconds and retry. FATAL: could not create any TCP/IP sockets
ÐÑо обÑÑно ознаÑÐ°ÐµÑ Ð¸Ð¼ÐµÐ½Ð½Ð¾ Ñо, ÑÑо напиÑано: Ð²Ñ Ð¿ÑÑаеÑеÑÑ Ð·Ð°Ð¿ÑÑÑиÑÑ ÑеÑÐ²ÐµÑ Ð½Ð° Ñом же поÑÑÑ, на коÑоÑом Ñже ÑабоÑÐ°ÐµÑ Ð´ÑÑгой. Ðднако еÑли ÑообÑение ÑдÑа не Address already in use или подобное, возможна и дÑÑÐ³Ð°Ñ Ð¿Ñоблема. ÐапÑимеÑ, пÑи попÑÑке запÑÑÑиÑÑ ÑеÑÐ²ÐµÑ Ñ Ð½Ð¾Ð¼ÐµÑом заÑезеÑвиÑованного поÑÑа бÑдÑÑ Ð²ÑÐ´Ð°Ð½Ñ Ñакие ÑообÑениÑ:
$ postgres -p 666
LOG: could not bind IPv4 address "127.0.0.1": Permission denied
HINT: Is another postmaster already running on port 666? If not, wait a few seconds and retry.
FATAL: could not create any TCP/IP sockets
СледÑÑÑее ÑообÑение:
FATAL: could not create shared memory segment: Invalid argument DETAIL: Failed system call was shmget(key=5440001, size=4011376640, 03600).
Ð¼Ð¾Ð¶ÐµÑ Ð¾Ð·Ð½Ð°ÑаÑÑ, ÑÑо ÑÑÑановленнÑй Ð´Ð»Ñ Ð²Ð°Ñего ÑдÑа пÑеделÑнÑй ÑÐ°Ð·Ð¼ÐµÑ ÑазделÑемой памÑÑи ÑлиÑком мал Ð´Ð»Ñ ÑабоÑей облаÑÑи, коÑоÑÑÑ Ð¿ÑÑаеÑÑÑ ÑоздаÑÑ Postgres Pro (в данном пÑимеÑе 4011376640 байÑ). Ð¢Ð°ÐºÐ°Ñ ÑиÑÑаÑÐ¸Ñ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð°, ÑолÑко еÑли в shared_memory_type вÑбÑан ваÑÐ¸Ð°Ð½Ñ sysv. Ð ÑÑом ÑлÑÑае можно попÑÑаÑÑÑÑ Ð·Ð°Ð¿ÑÑÑиÑÑ ÑеÑÐ²ÐµÑ Ñ Ð¼ÐµÐ½ÑÑим ÑиÑлом бÑÑеÑов (shared_buffers) или пеÑеконÑигÑÑиÑоваÑÑ ÑдÑо и ÑвелиÑиÑÑ Ð´Ð¾Ð¿ÑÑÑимÑй ÑÐ°Ð·Ð¼ÐµÑ ÑазделÑемой памÑÑи. ÐÑ Ñакже можеÑе ÑвидеÑÑ ÑÑо ÑообÑение пÑи попÑÑке запÑÑÑиÑÑ Ð½ÐµÑколÑко ÑеÑвеÑов на одном компÑÑÑеÑе, еÑли запÑоÑеннÑй ими обÑÑм памÑÑи в ÑÑмме пÑевÑÑÐ°ÐµÑ ÑÑÑановленнÑй в ÑдÑе пÑедел.
СообÑение:
FATAL: could not create semaphores: No space left on device DETAIL: Failed system call was semget(5440126, 17, 03600).
не ознаÑаеÑ, ÑÑо Ñ Ð²Ð°Ñ Ð·Ð°ÐºÐ¾Ð½ÑилоÑÑ Ð¼ÐµÑÑо на диÑке. ÐÑо знаÑиÑ, ÑÑо ÑÑÑановленное в ваÑем ÑдÑе пÑеделÑное ÑиÑло ÑемаÑоÑов System V менÑÑе, Ñем колиÑеÑÑво ÑемаÑоÑов, коÑоÑое пÑÑаеÑÑÑ ÑоздаÑÑ Postgres Pro. Ðак и в пÑедÑдÑÑем ÑлÑÑае можно попÑÑаÑÑÑÑ Ð¾Ð±Ð¾Ð¹Ñи ÑÑÑ Ð¿ÑоблемÑ, запÑÑÑив ÑеÑÐ²ÐµÑ Ñ Ð¼ÐµÐ½ÑÑим ÑиÑлом допÑÑÑимÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑÑений (max_connections), но в конÑе конÑов вам пÑидÑÑÑÑ ÑвелиÑиÑÑ ÑÑÐ¾Ñ Ð¿Ñедел в ÑдÑе.
ÐаÑÑÑойка ÑÑедÑÑв IPC в ÑÑиле System V опиÑÑваеÑÑÑ Ð² ÐодÑазделе 17.4.1.
17.3.2. ÐÑÐ¾Ð±Ð»ÐµÐ¼Ñ Ñ Ð¿Ð¾Ð´ÐºÐ»ÑÑениÑми клиенÑов
ХоÑÑ Ð¾Ñибки подклÑÑений, возможнÑе на ÑÑоÑоне клиенÑа, доволÑно ÑазнообÑÐ°Ð·Ð½Ñ Ð¸ завиÑÑÑ Ð¾Ñ Ð¿Ñиложений, вÑÑ Ð¶Ðµ неÑколÑко пÑоблем могÑÑ Ð±ÑÑÑ ÑвÑÐ·Ð°Ð½Ñ Ð½ÐµÐ¿Ð¾ÑÑедÑÑвенно Ñ Ñем, как бÑл запÑÑен ÑеÑвеÑ. ÐпиÑание оÑибок, оÑлиÑнÑÑ Ð¾Ñ Ð¾Ð¿Ð¸ÑаннÑÑ Ð½Ð¸Ð¶Ðµ, ÑледÑÐµÑ Ð¸ÑкаÑÑ Ð² докÑменÑаÑии ÑооÑвеÑÑÑвÑÑÑего клиенÑÑкого пÑиложениÑ.
psql: оÑибка: не ÑдалоÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑÑиÑÑÑÑ Ðº ÑеÑвеÑÑ "server.joe.com" (123.123.123.123) по поÑÑÑ 5432: Connection refused
Ðн дейÑÑвиÑелÑно ÑабоÑÐ°ÐµÑ Ð¿Ð¾ адÑеÑÑ "server.joe.com" (123.123.123.123) и пÑÐ¸Ð½Ð¸Ð¼Ð°ÐµÑ TCP-ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ (поÑÑ 5432)?
ÐÑо обÑÐ°Ñ Ð¿Ñоблема Â«Ñ Ð½Ðµ Ð¼Ð¾Ð³Ñ Ð½Ð°Ð¹Ñи ÑеÑÐ²ÐµÑ Ð¸ наÑаÑÑ Ð²Ð·Ð°Ð¸Ð¼Ð¾Ð´ÐµÐ¹ÑÑвие Ñ Ð½Ð¸Ð¼Â». Ðоказанное вÑÑе ÑообÑение говоÑÐ¸Ñ Ð¾ попÑÑке ÑÑÑановиÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑÑение по TCP/IP. ÐÑÐµÐ½Ñ ÑаÑÑо обÑÑÑнÑеÑÑÑ ÑÑо Ñем, ÑÑо ÑеÑÐ²ÐµÑ Ð¿ÑоÑÑо забÑли наÑÑÑоиÑÑ Ð´Ð»Ñ ÑабоÑÑ Ð¿Ð¾ пÑоÑÐ¾ÐºÐ¾Ð»Ñ TCP/IP.
ÐÑоме Ñого, пÑи попÑÑке ÑÑÑановиÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑÑение к локалÑÐ½Ð¾Ð¼Ñ ÑеÑвеÑÑ ÑеÑез Unix-ÑÐ¾ÐºÐµÑ Ð¼Ð¾Ð¶Ð½Ð¾ полÑÑиÑÑ Ñакое ÑообÑение:
psql: оÑибка: не ÑдалоÑÑ Ð¿Ð¾Ð´ÐºÐ»ÑÑиÑÑÑÑ Ðº ÑеÑвеÑÑ ÑеÑез ÑÐ¾ÐºÐµÑ "/tmp/.s.PGSQL.5432": No such file or directory
Ðн дейÑÑвиÑелÑно ÑабоÑÐ°ÐµÑ Ð»Ð¾ÐºÐ°Ð»Ñно и пÑÐ¸Ð½Ð¸Ð¼Ð°ÐµÑ ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ ÑеÑез ÑÑÐ¾Ñ ÑокеÑ?
ÐÑли ÑеÑÐ²ÐµÑ Ð´ÐµÐ¹ÑÑвиÑелÑно ÑабоÑаеÑ, пÑовеÑÑÑе, ÑÑо ÑказÑваемÑй клиенÑом пÑÑÑ ÑокеÑа (здеÑÑ /tmp) ÑооÑвеÑÑÑвÑÐµÑ Ð·Ð½Ð°ÑÐµÐ½Ð¸Ñ unix_socket_directories.
СообÑение об оÑибке подклÑÑÐµÐ½Ð¸Ñ Ð²Ñегда ÑодеÑÐ¶Ð¸Ñ Ð°Ð´ÑÐµÑ ÑеÑвеÑа или пÑÑÑ Ðº ÑокеÑÑ, ÑÑо Ð¿Ð¾Ð¼Ð¾Ð³Ð°ÐµÑ Ð¿Ð¾Ð½ÑÑÑ, кÑда именно подклÑÑаеÑÑÑ ÐºÐ»Ð¸ÐµÐ½Ñ. ÐÑли ÑеÑÐ²ÐµÑ Ð½Ð° Ñамом деле не пÑÐ¸Ð½Ð¸Ð¼Ð°ÐµÑ Ð¿Ð¾Ð´ÐºÐ»ÑÑÐµÐ½Ð¸Ñ Ð¿Ð¾ ÑÑÐ¾Ð¼Ñ Ð°Ð´ÑеÑÑ, обÑÑно вÑдаÑÑÑÑ ÑообÑение ÑдÑа Connection refused (Ð Ñоединении оÑказано) или No such file or directory (ÐÐµÑ Ñакого Ñайла или каÑалога), пÑиведÑнное вÑÑе. (Ðажно понимаÑÑ, ÑÑо Connection refused в данном конÑекÑÑе не ознаÑаеÑ, ÑÑо ÑеÑÐ²ÐµÑ Ð¿Ð¾Ð»ÑÑил запÑÐ¾Ñ Ð½Ð° подклÑÑение и оÑвеÑг его. Ð ÑÑом ÑлÑÑае бÑли Ð±Ñ Ð²ÑÐ´Ð°Ð½Ñ Ð´ÑÑгие ÑообÑениÑ, напÑимеÑ, показаннÑе в Разделе 19.15.) ÐÑÑгие ÑообÑÐµÐ½Ð¸Ñ Ð¾Ð± оÑибкаÑ
, напÑÐ¸Ð¼ÐµÑ Connection timed out (Тайм-аÑÑ ÑоединениÑ) могÑÑ ÑигнализиÑоваÑÑ Ð¾ более ÑÑндаменÑалÑнÑÑ
пÑоблемаÑ
, напÑимеÑ, о наÑÑÑениÑÑ
ÑеÑевÑÑ
Ñоединений или о блокиÑовании подклÑÑÐµÐ½Ð¸Ñ Ð±ÑандмаÑÑÑом.