PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Изключете дефиниции на функции при изхвърляне на PostgreSQL база данни

Доколкото знам, pg_dump и pg_dumpall не поддържат такова ограничение.

Вие можете преместете всичките си функции в специална схема, която можете да изключите от дъмпа по следния начин:

pg_dump mydb -N function_schema > mydump.sql

Ако тръгнете по този път, можете да мигрирате функции към друга схема като това:

ALTER FUNCTION myfunc() SET SCHEMA function_schema;

В този случай бих адаптирал и search_path в postgresql.conf (и евентуално в настройките по подразбиране за бази данни и роли)

SET search_path = public,function_schema [,more schemas]

Като алтернатива , можете да оставите функциите в тяхната схема по подразбиране public и да не използвате тази схема за нищо друго. Поставете вашите обекти в една или повече отделни схеми. Това трябва да улесни надграждането на PostGis.

Може би е добра идея да не използвайте public схема за вашите обекти. Обикновено го запазвам за PostGis или други разширения, които се инсталират в public по подразбиране. Обичам да използвам специална схема за всяко приложение. Улеснява поддръжката - включително архивиране и предоставяне на разрешения.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. заявка за администратора на първия ми ред за никога изтриване

  2. Как мога да напиша SQL заявка, за да изчисля количеството компоненти, продавани с техните родителски модули? (Postgres 11/рекурсивен CTE?)

  3. колона camelCase в база данни postgresql в релси (ActiveRecord)

  4. Съхранявайте низ със специални знаци като кавички или обратна наклонена черта в таблицата postgresql

  5. PostgreSQL - Как да вмъкна Base64 низове на изображения в колона BYTEA?