Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Установка языка plperlu / 25 сообщений из 25, страница 1 из 1
13.03.2008, 11:10
    #35187264
Garik888
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
Поставил ActivePerl. Снес а затем поставил Postgres 8.3. При утановке языка plperlu выдает:
An error has occurred:
ERROR: could not load library C:/Program Files/PostgreSQL/8.2/lib/plperl.dll : unknown error 126.
В папке C:/Program Files/PostgreSQL/8.2/lib/plperl.dll данный файл сущетвует.
Что делать помогите пожалуйста.
...
Рейтинг: 0 / 0
13.03.2008, 14:47
    #35188230
Ёш
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
наверное нужно для начала разобраться, почему pg 8.3 ищет библиотеку plperl в каталоге от 8.2


--
„Истина — это вовсе не то, что можно убедительно доказать, это то, что
делает всё проще и понятнее“ — Антуан де Сент-Экзюпери
...
Рейтинг: 0 / 0
13.03.2008, 14:58
    #35188289
Serik Akhmetov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
пропишите путь к perl.exe
...
Рейтинг: 0 / 0
13.03.2008, 15:36
    #35188461
Garik888
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
Ёшнаверное нужно для начала разобраться, почему pg 8.3 ищет библиотеку plperl в каталоге от 8.2


--
„Истина — это вовсе не то, что можно убедительно доказать, это то, что
делает всё проще и понятнее“ — Антуан де Сент-Экзюпери


Извиняюсь что путь не тот написал просто я пробовал на 8.2 и на 8.3. А путь он выводит првильный т.е.: An error has occurred:
ERROR: could not load library C:/Program Files/PostgreSQL/8.3/lib/plperl.dll : unknown error 126.
В папке C:/Program Files/PostgreSQL/8.3/lib/plperl.dll данный файл сущетвует.
...
Рейтинг: 0 / 0
13.03.2008, 15:37
    #35188470
Garik888
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
Serik Akhmetovпропишите путь к perl.exe

А где его прописывать?? И почему именно perl.exe ведь он другой файл ищет.
...
Рейтинг: 0 / 0
13.03.2008, 17:45
    #35189083
Garik888
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
Народ, ну кто нибудь помогите настроить. Ни разу этого не делал. Описания толкового нет для Windows.
...
Рейтинг: 0 / 0
13.03.2008, 23:29
    #35189575
Ёш
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
так там и не нужно описание, я помню что у меня всё автоматом заработало... %)
а путь видимо в переменной окружения PATH должен быть. что бы plperl.dll смогла загрузиться, она видимо просто не видит библиотек перла... и OS сообщает что plperl.dll невозможно загрузить о чём posgres сообщает этим самым "ERROR: could not load library C:/Program Files/PostgreSQL/8.2/lib/plperl.dll : unknown error 126. "

--
„Истина — это вовсе не то, что можно убедительно доказать, это то, что
делает всё проще и понятнее“ — Антуан де Сент-Экзюпери
...
Рейтинг: 0 / 0
14.03.2008, 07:07
    #35189750
Serik Akhmetov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
Ёша путь видимо в переменной окружения PATH должен быть.да
...
Рейтинг: 0 / 0
14.03.2008, 11:05
    #35190209
Garik888
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
переменная имеется, сносил все и заного ставил сначала ActivePerl 5.10.0.1002 затем Postgres 8.3, но при установке postgres не дает даже выбрать pl/perl. А ошибка возникает таже самая. Есть еще идеи? Может ActivePerl 5.10.0.1002 не той версии?
...
Рейтинг: 0 / 0
14.03.2008, 12:06
    #35190482
Serik Akhmetov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
а где вы хотите его выбрать ?
нужно использовать утилиту createlang
или SQL-команду CREATE LANGUAGE ...
...
Рейтинг: 0 / 0
14.03.2008, 12:15
    #35190520
Garik888
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
Serik Akhmetovа где вы хотите его выбрать ?
нужно использовать утилиту createlang
или SQL-команду CREATE LANGUAGE ...

Выбрать при утановке. Там он выводится, но он не активный.

Я использовал createlang и CREATE LANGUAGE все без разницы. Может что то забыл сделать?
...
Рейтинг: 0 / 0
14.03.2008, 13:11
    #35190777
Serik Akhmetov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
PostgreSQL перезапускали с новыми переменными окружения ?
...
Рейтинг: 0 / 0
14.03.2008, 13:16
    #35190801
Garik888
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
Serik AkhmetovPostgreSQL перезапускали с новыми переменными окружения ?
Обязательно! Пожалуйста объесните как сделать, очень нужно.
...
Рейтинг: 0 / 0
14.03.2008, 17:01
    #35191769
Garik888
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
Ну что, ни у кого нет идей как решить эту проблему?

Кто решил эту проблему можете написать мне на почту, просто хочется посоветоваться.
Моя почта: garik888@gmail.com.
...
Рейтинг: 0 / 0
15.03.2008, 15:38
    #35192795
Ilya Anfimov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
On Thu, Mar 13, 2008 at 08:10:32AM +0000, Garik888 wrote:
>
> Автор: [1]Garik888
> Поставил ActivePerl. Снес а затем поставил Postgres 8.3. При утановке
> языка plperlu выдает:
> An error has occurred:
> ERROR: could not load library C:/Program
> Files/PostgreSQL/8.2/lib/plperl.dll : unknown error 126.
> В папке C:/Program Files/PostgreSQL/8.2/lib/plperl.dll данный файл
> сущетвует.
> Что делать помогите пожалуйста.

Снести данный файл.
После чего ребутнуть комп.
> [2]Тема [3]Ответить [4]Сообщение
>
> Ссылки
>
> 1. Garik888
> 2. http://www.sql.ru/forum/actualthread.aspx?tid=535394
> 3. http://www.sql.ru/forum/actualpost.aspx?tid=535394
> 4. http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=535394&msg=5404138
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
17.03.2008, 15:20
    #35195578
Garik888
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
Ilya Anfimov
On Thu, Mar 13, 2008 at 08:10:32AM +0000, Garik888 wrote:
>
> Автор: [1]Garik888
> Поставил ActivePerl. Снес а затем поставил Postgres 8.3. При утановке
> языка plperlu выдает:
> An error has occurred:
> ERROR: could not load library C:/Program
> Files/PostgreSQL/8.2/lib/plperl.dll : unknown error 126.
> В папке C:/Program Files/PostgreSQL/8.2/lib/plperl.dll данный файл
> сущетвует.
> Что делать помогите пожалуйста.

Снести данный файл.
После чего ребутнуть комп.
> [2]Тема [3]Ответить [4]Сообщение
>
> Ссылки
>
> 1. Garik888
> 2. http://www.sql.ru/forum/actualthread.aspx?tid=535394
> 3. http://www.sql.ru/forum/actualpost.aspx?tid=535394
> 4. http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=535394&msg=5404138
Posted via ActualForum NNTP Server 1.4

Удалил plperl.dll. Теперь пишет:
ERROR: could not access file $libdir/plperl : No such file or directory
...
Рейтинг: 0 / 0
17.03.2008, 16:53
    #35195990
Ёш
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
и зачем ? :) без plperl.dll не будет работать 100% потому что plperl.dll - это и есть реализация языка perl для хранимых процедур ;)

я всёж таки думаю что у Вас просто не прописан путь к perl в PATH кстати помните что в windows два разных PATH ? один общесистемный который применяется ко всем пользователям и один - свой собственный для каждого пользователя. Если Вы работаете под пользователем Vasya и у него в PATH прописан perl так что при пуск -> выполнить: cmd и там perl - perl запускается и работает. это совсем не значит что у пользователя postgres от имени которого выполняются процессы СУБД PostgreSQL то же в PATH будет perl и он сможет его найти... проверте, или убедитесь что путь к perl прописан в общесистемном PATH


--
„Истина — это вовсе не то, что можно убедительно доказать, это то, что
делает всё проще и понятнее“ — Антуан де Сент-Экзюпери
...
Рейтинг: 0 / 0
17.03.2008, 16:58
    #35196018
Ilya Anfimov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
On Mon, Mar 17, 2008 at 12:20:29PM +0000, Garik888 wrote:
>
> Автор: [1]Garik888
> Ilya Anfimov
> On Thu, Mar 13, 2008 at 08:10:32AM +0000, Garik888 wrote:
> >
> > Автор: [1]Garik888
> > Поставил ActivePerl. Снес а затем поставил Postgres 8.3. При
> утановке
> > языка plperlu выдает:
> > An error has occurred:
> > ERROR: could not load library C:/Program
> > Files/PostgreSQL/8.2/lib/plperl.dll : unknown error 126.
> > В папке C:/Program Files/PostgreSQL/8.2/lib/plperl.dll данный файл
> > сущетвует.
> > Что делать помогите пожалуйста.
> Снести данный файл.
> После чего ребутнуть комп.
> > [2]Тема [3]Ответить [4]Сообщение
> >
> > Ссылки
> >
> > 1. Garik888
> > 2. http://www.sql.ru/forum/actualthread.aspx?tid=535394
> > 3. http://www.sql.ru/forum/actualpost.aspx?tid=535394
> > 4.
> http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=535394&msg
> =5404138
> Posted via ActualForum NNTP Server 1.4
> Удалил plperl.dll. Теперь пишет:
> ERROR: could not access file $libdir/plperl : No such file or
> directory

Э-э-э. А ты вообще где брал plperl под 8.3?

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
18.03.2008, 10:31
    #35197072
Garik888
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
Ёши зачем ? :) без plperl.dll не будет работать 100% потому что plperl.dll - это и есть реализация языка perl для хранимых процедур ;)

я всёж таки думаю что у Вас просто не прописан путь к perl в PATH кстати помните что в windows два разных PATH ? один общесистемный который применяется ко всем пользователям и один - свой собственный для каждого пользователя. Если Вы работаете под пользователем Vasya и у него в PATH прописан perl так что при пуск -> выполнить: cmd и там perl - perl запускается и работает. это совсем не значит что у пользователя postgres от имени которого выполняются процессы СУБД PostgreSQL то же в PATH будет perl и он сможет его найти... проверте, или убедитесь что путь к perl прописан в общесистемном PATH


--
„Истина — это вовсе не то, что можно убедительно доказать, это то, что
делает всё проще и понятнее“ — Антуан де Сент-Экзюпери


Прописал в общесистемный PATH путь к perl. Пробовал выполнять команду perl, все работает. Перезагрузился, опять вылетает ошибка, что не может подключить plperl.dll. Я уже не знаю что делать. Может я не тот перл поставил?
...
Рейтинг: 0 / 0
18.03.2008, 12:51
    #35197563
StX
StX
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
Garik888Прописал в общесистемный PATH путь к perl. Пробовал выполнять команду perl, все работает. Перезагрузился, опять вылетает ошибка, что не может подключить plperl.dll. Я уже не знаю что делать. Может я не тот перл поставил?
Так, теперь по пунктам
1. Ищем файл (куда поставили перл)\bin\perl58.dll. Есть? Ок, это правильный перл.
2. Смотрим права доступа на файлы (куда поставили перл) для пользователя, под которым запускается сервис PostgreSQL, даем разрешения если не хватает.
2. Логинимся в windows под тем пользователем, под которым запускается сервис PostgreSQL. Можно просмто запустить cmd/FAR/TC под этим юзером (правая кнопка -> "Запуск от имени...").
3. Убеждаемся что perl запускается с командной строки. Нет? Смотрим в командной строке echo %PATH%. Есть путь к (что-то-там)\perl\bin?
5. Пробуем createlang plperl снова. Удалось? Пробуем create function ... language 'plperl'. Получилось?

Успехов!
...
Рейтинг: 0 / 0
18.03.2008, 13:33
    #35197737
Garik888
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
StX Garik888Прописал в общесистемный PATH путь к perl. Пробовал выполнять команду perl, все работает. Перезагрузился, опять вылетает ошибка, что не может подключить plperl.dll. Я уже не знаю что делать. Может я не тот перл поставил?
Так, теперь по пунктам
1. Ищем файл (куда поставили перл)\bin\perl58.dll. Есть? Ок, это правильный перл.
2. Смотрим права доступа на файлы (куда поставили перл) для пользователя, под которым запускается сервис PostgreSQL, даем разрешения если не хватает.
2. Логинимся в windows под тем пользователем, под которым запускается сервис PostgreSQL. Можно просмто запустить cmd/FAR/TC под этим юзером (правая кнопка -> "Запуск от имени...").
3. Убеждаемся что perl запускается с командной строки. Нет? Смотрим в командной строке echo %PATH%. Есть путь к (что-то-там)\perl\bin?
5. Пробуем createlang plperl снова. Удалось? Пробуем create function ... language 'plperl'. Получилось?

Успехов!

1. Я ставил ActivePerl, но \bin\perl58.dll у меня отсутствует. Пробовал скачать просто perl58.dll, но ничего не пошло. Можешь дать ссылку где скачать нормальный перл со всеми dll. Или если есть возможность можешь закинуть на почту.
...
Рейтинг: 0 / 0
18.03.2008, 14:49
    #35198036
Garik888
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
Решил проблему установкой ActivePerl версии 5.8.8.822. Версия 5.10 не подходит для Postgres. Тема закрыта.
...
Рейтинг: 0 / 0
18.03.2008, 15:22
    #35198206
Garik888
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
Serik Akhmetov , в другой теме вы писали:
Serik AkhmetovCREATE OR REPLACE FUNCTION file_read2(text, int4, int4)
RETURNS bytea AS
$BODY$
my $file = @_[0]; # Имя файла
my $start_pos = @_[1]; # Смещение от начала
my $length = @_[2]; # Прочесть кол-во байт

my $f,$s,$v,$ret;
my $c;

$ret = '';
#$c = 0;

open($f,"<".$file);
seek($f,$start_pos,1);
binmode($f);
while($length > 0)
{
read($f,$s,1);
$v = unpack("C",$s);
if ( ($v>=0 && $v<=31) || ($v>=127 && $v<=255) || ($v==39) || ($v==92))
{
my $substr;
$substr = sprintf("%03o",$v);
$ret .= "\\".$substr;
}
else
{
$ret .= $s;
}
$length--;
} # while


close($f);

return ($ret);

$BODY$
LANGUAGE 'plperlu' VOLATILE;
ALTER FUNCTION file_read2(text, int4, int4) OWNER TO postgres;

есть ли у вас функция для записи файла на сервер?
...
Рейтинг: 0 / 0
18.03.2008, 16:50
    #35198572
Ilya Anfimov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
On Tue, Mar 18, 2008 at 09:51:02AM +0000, StX wrote:
>
> Автор: StX
> Garik888
> Прописал в общесистемный PATH путь к perl. Пробовал выполнять команду
> perl, все работает. Перезагрузился, опять вылетает ошибка, что не
> может подключить plperl.dll. Я уже не знаю что делать. Может я не тот
> перл поставил?
> Так, теперь по пунктам
> 1. Ищем файл (куда поставили перл)\bin\perl58.dll. Есть? Ок, это
> правильный перл.

Человеку нужэн не только perl58.dll, но и plperl.dll.

Только, очевидно, правильный plperl.dll -- от 8.3, а не 8.2

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
18.03.2008, 17:00
    #35198612
Shweik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка языка plperlu
И на что только люди не пойдут ради тоо чтоб не ставить Постгрес под *nix-сы.;)
Впрочем дело ясное - тему закрываем и идём искать правильный dll.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Установка языка plperlu / 25 сообщений из 25, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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