Как-то мне потребовалось настроить синхронизацию нескольких таблиц на разных серверах PostgreSQL, не настраивая при этом репликацию в классическом её виде, проанализировал я много разных вариантов и самый простой оказался синхронизация через dblink. Настройку выполняю на Debian 7.0 (Wheezy), база данных PoetgreSQL 9.1. Предполагаю, что база уже развёрнута и работает, а так же что у Вас […]
Рубрика: PostgreSQL
Отправка E-Mail'ов через функцию в PostgreSQL
По рабочей необходимости потребовалось реализовать отправку электронных сообщений простым вызовом функции базы данных. В наличии есть сервер PostgreSQL 9.1 и Debian 7 (Wheezy). Для начала нам понадобится поддержка языка Python в PostgreSQL: sudo apt-get install postgresql python3 postgresql-plpython3-9.1 Авторизуемся из под под пользователя postgres: sudo -u postgres psql Создадим язык для работы функции CREATE LANGUAGE […]
Настройка master<->master репликации PostgreSQL через Bucardo
Хочу поделиться своим опытом настройки репликации PostgreSQL типа master<->master, которую мне потребовалось развернуть для уменьшения нагрузки на компьютер, на котором изначально была одна база, но со временем нагрузка на компьютер так возросла, что база перестала справляться. Итак, что у нас есть и что нам нужно: Есть 2 компьютера с чистой Debian 7 (pg1 -> 192.168.2.11 […]
Как в PostgreSQL перенести данные из одной таблицы в другую?
Допустим нам необходимо перенести данные из одной таблицы в другую, для этого достаточно выполнить такой вот запрос в базу: INSERT INTO tab1 (nick, pass) select username, hash from tab2;
Как перенести базу данных PostgreSQL с одного сервера на другой?
На сервере источнике создадим дамп: sudo su — postgrespg_dumpall —host=127.0.0.1 —port=5432 —database=base —file=base.dump Затем перенесём файл на другой сервер, например используя scp. После чего выполним импорт базы: sudo su — postgrespsql -Upostgres -h newhost -f base.dump
PostgreSQL: Запрос отображающий диапазон дат
Отличный SQL запрос для PostgreSQL, который строит календарь дат на 10 лет, начиная с числа указанного в самом конце запроса: SELECT datum AS Date, extract(year FROM datum) AS Year, extract(month FROM datum) AS Month, — Localized month name to_char(datum, ‘TMMonth’) AS MonthName, extract(day FROM datum) AS Day, extract(doy FROM datum) AS DayOfYear, — Localized weekday […]