IT-канал, просто о сложном
https://interface31.ru
Купить рекламу:
https://telega.in/c/interface31
Post #5154
3K
- 🤮 8
- 👍 5
- 👎 1
ЗА @interface31
Showing posts older than #5156 · Back to latest

/ip firewall filter
add action=accept chain=input connection-state=established,related in-interface=ether5
add action=drop chain=input connection-state=invalid in-interface=ether5
add action=accept chain=input in-interface=ether5 protocol=icmp
add action=drop chain=input in-interface=ether5


-h:
-h имя_сервера
Если пользователь удаленного сервера отличается от текущего пользователя СУБД, то дополнительно используем ключ -U:
-U имя_пользователя
Теперь несколько практических примеров:
su - postgres
Теперь можно посмотреть базы на текущем сервере:
psql -l
И на удаленном:
psql -h SRV-02 -l
Перед тем как переносить базы на сервере приемнике их нужно создать, причем обязательно использовать для этого template0:
createdb -T template0 newbase
Это также можно сделать удаленно, не вставая с любимого дивана:
createdb -h SRV-02 -T template0 newbase
Ну вот, все готово к переносу. Выгружаем здесь и по конвейеру передаем туда:
pg_dump oldbase | psql -h SRV-02 newbase
Также можно выполнить всю эту операцию полностью удаленно, это может пригодиться, если сервера СУБД находятся у вас в разных подсетях и не видят друг друга или в контейнерах с минимальным набором инструментов.
apt install postgresql-client-<VERSION>
Версию ставим ту, что в дистрибутиве, ее номер роли не играет, так же, как и базы можно переносить между серверами различных версий.
pg_dump -h SRV-01 oldbase | psql -h SRV-02 newbase
Первая часть команды выгрузит базу с удаленного сервера в стандартный поток вывода, а вторая загрузит на другой удаленный сервер через стандартный поток ввода.




