среда, 15 апреля 2009 г.

PlProxy - установка на убунту 8

Пришло время попробовать PlProxy.
Для начала - нужно его установить:

Нужно скачать последнюю версию с http://pgfoundry.org/projects/plproxy и распаковать её (я распаковал в /tmp/plproxy).

Далее в описании процесса инсталляции сказано сделать
make 

...но мне ругалось на ошибки.
Как оказалось нужно еще установить кое-что:

sudo apt-get install libpq-dev
sudo apt-get install postgresql-server-dev-8.3
sudo apt-get install flex
sudo apt-get install bison


После этого нормально проходит

make
make install


Но на make installcheck мне ругнулось, что типа постгрес не отвечает на стандартном порту. Ну ладно. Я сделал далее как следует:

psql -f /usr/share/contrib/plproxy.sql test

Конечно же БД test уже существовала. Ругнулось на отсутствие пользователя root. Поскольку это тестирование - я выстренько сделал суперпользователя root в БД.

Далее я создал еще одну БД ro1.
В БД ro1 создал таблицу Test_1

CREATE TABLE test_1
(
"Id" serial NOT NULL,
"Name" character varying(400) NOT NULL,
CONSTRAINT pk_id PRIMARY KEY ("Id")
)
WITH (OIDS=FALSE);
ALTER TABLE test_1 OWNER TO postgres;


Вставил несколько строк (руками).

Потом проверил работу plproxy-языка.

Это в БД test:

create or replace function test_plproxy(i_text text)
returns setof text as $$

connect 'dbname=ro1';
select "Name" from Test_1 where "Id"=1;
--select $1;

$$ language plproxy;


Теперь с БД test выполняю

select test_plproxy('zzz');

И получаю ответ (не буду его приводить) - значит все работает!

Комментариев нет: