PostgreSQL - Як змінити табличний простір за промовчанням pg_default

PostgreSQL - Як змінити табличний простір за промовчанням pg_default

Колеги всім привіт.

У сьогоднішній статті ми поговоримо про те, як змінити табличний простір за мовчанням з pg_default на свій PostgreSQL.

У той момент коли ви створюєте якусь таблицю, то не явним чином сам PostgreSQL підставляє додатковий параметр TABLESPACE pg_default, але якщо ви хочете щоб таблиці створювалися в іншому табличному просторі, то можна цю зробити змінивши конфігураційний параметр default_tablespace.

 

Змінна default_tablespace встановлює табличний простір, який буде використовуватися за умовчанням, в якому будуть створюватися об'єкти бази даних (таблиці та індекси). За умовчанням змінна має значення порожнього рядка, а це означає, що всі об'єкти бази даних будуть створюватися в табличному просторі. Якщо навіть ви вкажете якесь значення в змінну і виявиться що такого табличного простору не існує, то ніякої помилки не буде, а всі об'єкти бази даних будуть створюватися в табличному просторі.

Ще дуже важливим нюансом є те, що ця змінна не використовується для тимчасових таблиць.

 

Вміст статті:

  1. Перегляд значення змінної default_tablespace.
  2. Встановлення нового значення змінної default_tablespace.
  3. Перезапуск бази даних.
  4. Перевірка.
  5. Підсумки.

 

1. Перегляд значення змінної default_tablespace.

Перед тим як ми щось змінюватимемо, давайте для початку дізнаємося яке значення має змінна default_tablespace, для цього скористаємося sql запит.

sql> SELECT name, setting FROM pg_settings WHERE name = 'default_tablespace';

postgresql змінити дефектний стіл

Як бачимо стандартні значення порожній рядок.


 

2. Встановлення нового значення змінної default_tablespace.

Змінна default_tablespace є статичною, і за цим потрібно значення змінювати в конфігураційному файлі postgresql.conf.

Відкриваємо конфігураційний файл postgresql.conf і знаходимо змінну default_tablespace.

postgresql змінити дефектний стіл

Після того так знайшли змінну, то міняємо значення на свій табличний простір, у моєму випадку я мінятиму на inzhener_1.

postgresql змінити дефектний стіл


 

3. Перезапуск бази даних.

Після того, як встановили значення змінної, необхідно перезапустити базу даних для того, щоб значення змінної застосовалось.

$. pg_ctl restart


 

4. Перевірка.

Після перезапуску бази даних необхідно перевірити чи застосовано наше значення змінної, для цього виконаємо той самий запит, що й у першому пункті.

sql> SELECT name, setting FROM pg_settings WHERE name = 'default_tablespace';

postgresql змінити дефектний стіл


 

5. Підсумки.

Після всього, що ми зробили, тепер якщо ви створюватимете нові об'єкти в базі даних, то вони будуть створюватися не в табличному просторі pg_default, а в тому, що ви вказали в змінній default_tablespace.


 

Всім дякую, я сподіваюся, що вам моя стаття хоч чимось допомогла.

 

СХОЖІ СТАТТІ

PostgreSQL Помилка: requested wal segment has already been removed
PostgreSQL Помилка: requested wal segment has already been removed
POSTGRESQL
PostgreSQL: Як включити контрольні суми даних - pg_checksums
PostgreSQL: Як включити контрольні суми даних - pg_checksums
POSTGRESQL
Postgresql - Список користувачів
Postgresql - Список користувачів
POSTGRESQL