Postgresql — различия между версиями
Материал из m6a
								
												
				Vshpagin (обсуждение | вклад)  (→Обслуживание)  | 
				Vshpagin (обсуждение | вклад)   (→Обслуживание)  | 
				||
| (не показаны 3 промежуточные версии этого же участника) | |||
| Строка 1: | Строка 1: | ||
| + | ==Установка==  | ||
| + | *Распакуем архив  | ||
| + |   tar -xvjf postgresql_9.6.6_1.1C_amd64_deb.tar.bz2  | ||
| + | *Перейдем в папку с распакованным архивом  | ||
| + |   cd postgresql-9.6.6-1.1C_amd64_deb/  | ||
| + | *Установим вспомогательную библиотеку  | ||
| + |   dpkg -i libpq5_9.6.6-1.1C_amd64.deb  | ||
| + | *Установим стандартные компоненты  | ||
| + |   apt-get -y install libicu55 postgresql-common plperl plpython plpython3 pltcl test devel docs  | ||
| + | *Установим клиент  | ||
| + |   dpkg -i postgresql-client-9.6_9.6.6-1.1C_amd64.deb  | ||
| + | *Установим сервер  | ||
| + |   dpkg -i postgresql-9.6_9.6.6-1.1C_amd64.deb  | ||
| + | *Установим дополнительный модуль  | ||
| + |  dpkg -i postgresql-contrib-9.6_9.6.6-1.1C_amd64.deb  | ||
| + | *Остановим сервер  | ||
| + |  service postgresql stop  | ||
| + | *Удалим стандартное месторасположение БД  | ||
| + |  rm -rf /var/lib/postgresql/9.6/main/*  | ||
| + | *Отредактируем настройки сервера  | ||
| + |   vi /etc/postgresql/9.6/main/postgresql.conf  | ||
| + | *Установим слеющие значения  | ||
| + |   data_directory = '/var/lib/pgsql'  | ||
| + | *Отредактируем права доступа к серверу  | ||
| + |   vi /etc/postgresql/9.6/main/pg_hba.conf  | ||
| + | *Установим следующие значения  | ||
| + |   local   all             postgres                                trust  | ||
| + | *Создадим новое месторасположение БД  | ||
| + |   mkdir /var/lib/pgsql  | ||
| + | *Зададим права доступа на новое место расположение  | ||
| + |   chown -R postgres:postgres /var/lib/pgsql  | ||
| + | *Создадим инстанс в новом месторасположении  | ||
| + |   sudo -u postgres /usr/lib/postgresql/9.6/bin/initdb -D /var/lib/pgsql --locale=ru_RU.UTF-8  | ||
| + | *Запустим сервер  | ||
| + |   service postgresql start  | ||
==Обслуживание==  | ==Обслуживание==  | ||
*Вывести список баз  | *Вывести список баз  | ||
| Строка 7: | Строка 42: | ||
   dropdb -U postgres $database  |    dropdb -U postgres $database  | ||
*Создать резервную копию базы данных  | *Создать резервную копию базы данных  | ||
| − |    pg_dump -U postgres $database --format custom --blobs --section pre-data   | + |    pg_dump -U postgres $database --format custom --blobs --section pre-data    | 
   --section data --section post-data --encoding UTF8 --verbose --file $pathToBackup  |    --section data --section post-data --encoding UTF8 --verbose --file $pathToBackup  | ||
*Восстановить базу данных из резервной копии  | *Восстановить базу данных из резервной копии  | ||
| − |    pg_restore  -U postgres --dbname $database --role "postgres" --no-password   | + |    pg_restore  -U postgres --dbname $database --role "postgres" --no-password    | 
   --section pre-data --section data --section post-data $pathToBackup  |    --section pre-data --section data --section post-data $pathToBackup  | ||
| + | *Узнать размер базы данных  | ||
| + |   psql -U postgres -c "SELECT pg_size_pretty( pg_database_size( '$database' ) ); "  | ||
Текущая версия на 10:26, 16 ноября 2019
Установка
- Распакуем архив
 
tar -xvjf postgresql_9.6.6_1.1C_amd64_deb.tar.bz2
- Перейдем в папку с распакованным архивом
 
cd postgresql-9.6.6-1.1C_amd64_deb/
- Установим вспомогательную библиотеку
 
dpkg -i libpq5_9.6.6-1.1C_amd64.deb
- Установим стандартные компоненты
 
apt-get -y install libicu55 postgresql-common plperl plpython plpython3 pltcl test devel docs
- Установим клиент
 
dpkg -i postgresql-client-9.6_9.6.6-1.1C_amd64.deb
- Установим сервер
 
dpkg -i postgresql-9.6_9.6.6-1.1C_amd64.deb
- Установим дополнительный модуль
 
dpkg -i postgresql-contrib-9.6_9.6.6-1.1C_amd64.deb
- Остановим сервер
 
service postgresql stop
- Удалим стандартное месторасположение БД
 
rm -rf /var/lib/postgresql/9.6/main/*
- Отредактируем настройки сервера
 
vi /etc/postgresql/9.6/main/postgresql.conf
- Установим слеющие значения
 
data_directory = '/var/lib/pgsql'
- Отредактируем права доступа к серверу
 
vi /etc/postgresql/9.6/main/pg_hba.conf
- Установим следующие значения
 
local all postgres trust
- Создадим новое месторасположение БД
 
mkdir /var/lib/pgsql
- Зададим права доступа на новое место расположение
 
chown -R postgres:postgres /var/lib/pgsql
- Создадим инстанс в новом месторасположении
 
sudo -u postgres /usr/lib/postgresql/9.6/bin/initdb -D /var/lib/pgsql --locale=ru_RU.UTF-8
- Запустим сервер
 
service postgresql start
Обслуживание
- Вывести список баз
 
psql -U postgres -l
- Создать базу данных
 
createdb -U postgres -E UTF8 --locale=ru_RU.UTF-8 $database
- Удалить базу данных
 
dropdb -U postgres $database
- Создать резервную копию базы данных
 
pg_dump -U postgres $database --format custom --blobs --section pre-data --section data --section post-data --encoding UTF8 --verbose --file $pathToBackup
- Восстановить базу данных из резервной копии
 
pg_restore -U postgres --dbname $database --role "postgres" --no-password --section pre-data --section data --section post-data $pathToBackup
- Узнать размер базы данных
 
psql -U postgres -c "SELECT pg_size_pretty( pg_database_size( '$database' ) ); "