Postgresql — различия между версиями
Материал из m6a
								
												
				Vshpagin (обсуждение | вклад)  | 
				Vshpagin (обсуждение | вклад)   (→Обслуживание)  | 
				||
| Строка 47: | Строка 47: | ||
   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' ) ); "