Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / pg_dump странное поведение / 12 сообщений из 12, страница 1 из 1
30.11.2018, 14:47
    #39740926
Tester666
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
pg_dump странное поведение
Добрый день!
Необходимо выгрузить схему public из базы, но почему-то в дампе после выгрузки не видно никаких таблиц. Пробовал разные способы, результат один - никакие объекты схемы не выгружаются. Например:
Код: plsql
1.
pg_dump.exe -d Test -n public -U postgres -f Test.dump.


Владельцем схемы public является суперпользователь postgres.
До этого делал дамп всех схем данной базы и заметил следующее: все схемы, владельцем которых был postgres не выгрузились. Ошибок во время дампа не было. Что может быть не так? В просторах интернета нашел похожую ситуацию:
https://dba.stackexchange.com/questions/194098/pg-dump-issue-while-dumping-single-schema

В моем случае дамп вот такой на выходе:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
--
-- PostgreSQL database dump
--

-- Dumped from database version 10.5
-- Dumped by pg_dump version 10.6

SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET client_min_messages = warning;
SET row_security = off;

--
-- PostgreSQL database dump complete
--



Версия постгреса - PostgreSQL 10.6, compiled by Visual C++ build 1800, 64-bit
...
Рейтинг: 0 / 0
30.11.2018, 15:42
    #39741017
grgdvo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
pg_dump странное поведение
Tester666,

Код: plaintext
1.
-- Dumped from database version 10.5
-- Dumped by pg_dump version 10.6

У вас там случайно две версии сервера не запущено??
А то клиент у вас от 10.6, а сервер от 10.5
...
Рейтинг: 0 / 0
03.12.2018, 08:20
    #39741821
Tester666
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
pg_dump странное поведение
grgdvo,
нет, сервер один.
...
Рейтинг: 0 / 0
03.12.2018, 11:06
    #39741859
Павел Лузанов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
pg_dump странное поведение
Покажите вывод этих двух команд. Только целиком, ничего не обрезайте.
Код: sql
1.
2.
pg_dump.exe -d Test -n public -U postgres
psql.exe -d Test -U postgres -c '\dt public.*'
...
Рейтинг: 0 / 0
03.12.2018, 13:58
    #39741948
Tester666
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
pg_dump странное поведение
Поправка, на компьютере действительно 2 сервера, сразу не заметил. Теперь прописываю нужный мне хоcт (
Код: sql
1.
pg_dump.exe -d Test -n public -U postgres -p 1234 -f "Test.dump"

) и получаю дамп в таком виде:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
--
-- PostgreSQL database dump
--

-- Dumped from database version 10.6
-- Dumped by pg_dump version 10.6

SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET client_min_messages = warning;
SET row_security = off;

--
-- PostgreSQL database dump complete
--



Однако схемы паблик как не было так и нет.

Пробую следующий вариант:
Код: sql
1.
psql.exe -d Test -U postgres -p 1234 -c \dt public.*


В результате выводится список таблиц паблика:

Список отношений
Схема | Имя | Тип | Владелец
--------+-----------------------------+-----+----------
public | table1 | таблица | postgres
public | table2 | таблица | postgres
(2 строки)
...
Рейтинг: 0 / 0
03.12.2018, 14:52
    #39741987
Павел Лузанов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
pg_dump странное поведение
Tester666,

Всё-таки есть ощущение, что pg_dump и psql к разным базам подключаются.
...
Рейтинг: 0 / 0
05.12.2018, 11:15
    #39742732
Visermoz
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
pg_dump странное поведение
Посмотрите список баз: может быть у вас есть test и "Test" с первой буковой в верхнем регистре?
...
Рейтинг: 0 / 0
06.12.2018, 13:18
    #39743440
Tester666
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
pg_dump странное поведение
Нет, база на этом порту одна - и называется так как написано (Test).
...
Рейтинг: 0 / 0
15.01.2019, 17:18
    #39759908
Alex__kK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
pg_dump странное поведение
Tester666,

У меня похожая ситуация:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
bash-4.2$ psql mydb
psql (10.4)
Введите "help", чтобы получить справку.

mydb=# select * from amqp.broker;
 broker_id |   host    | port | vhost | username | password
-----------+-----------+------+-------+----------+----------
         1 | localhost | 5672 |       |          |
(1 строка)

mydb=# \dt amqp.*
          Список отношений
 Схема |  Имя   |   Тип   | Владелец
-------+--------+---------+----------
 amqp  | broker | таблица | postgres
(1 строка)

mydb=# \q

bash-4.2$ pg_dump --format=plain -d mydb -n amqp
--
-- PostgreSQL database dump
--

-- Dumped from database version 10.4
-- Dumped by pg_dump version 10.4

SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET client_min_messages = warning;
SET row_security = off;

--
-- Name: amqp; Type: SCHEMA; Schema: -; Owner: postgres
--

CREATE SCHEMA amqp;


ALTER SCHEMA amqp OWNER TO postgres;

--
-- Name: SCHEMA amqp; Type: ACL; Schema: -; Owner: postgres
--

GRANT USAGE ON SCHEMA amqp TO testuser;


--
-- PostgreSQL database dump complete
--

bash-4.2$



pg_dump содержимое таблицы почему-то не выводит.
Следует отметить, что данная схема часть расширения. Я пробовал это расширение переустановить, но ситуацию это не изменило.
Незнаю что и думать.

ЗЫ. На сервере сервер один.
...
Рейтинг: 0 / 0
15.01.2019, 17:21
    #39759910
Alex__kK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
pg_dump странное поведение
Причем на другом сервере данное поведение не воспроизводится и содержимое таблицы в дамп попадает
...
Рейтинг: 0 / 0
15.01.2019, 17:45
    #39759932
Павел Лузанов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
pg_dump странное поведение
Alex__kK,

Для того чтобы содержимое таблицы, которая является частью расширения, попадало в вывод pg_dump в скрипте расширения должен быть вызов функции типа:
Код: sql
1.
SELECT pg_extension_config_dump('amqp.broker'::regclass);


Причем этот вызов нельзя сделать вне скрипта расширения.

Если на другом сервере у вас содержимое этой таблицы выгружается, то
* либо она там не является частью расширения, проверьте через \dx+
* там другая версия расширения, где вызов функции добавлен. Сверьте версии.
...
Рейтинг: 0 / 0
16.01.2019, 08:27
    #39760094
Alex__kK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
pg_dump странное поведение
Павел Лузанов,

Вы были абсолютно правы, на той машине, где содержимое попадает в дамп, версия расширения чуть более новое, и там присутствует строка:
Код: sql
1.
SELECT pg_catalog.pg_extension_config_dump('broker', '');



Спасибо!
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / pg_dump странное поведение / 12 сообщений из 12, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]