nixp.ru v3.0

21 октября 2017,
суббота,
06:15:37 MSK

DevOps с компанией «Флант»
Shturman написал 27 декабря 2005 года в 15:48 (1284 просмотра) Ведет себя как мужчина; открыл 2 темы в форуме.

Понадобилось поставить dovecot (оговоре в техзадании) с авторизацией через базу с шифрованными паролями. Из документации по dovecot понял, что он может использовать MD5-Digest и MD5-Cram. Выбрал MD5-Digest. Написал скрипт на perl который должен вносить в таблицу значение запороленное и не запароленное (в тестовых целях, потом поправлю для создания пользователей в базе). Но при выполнении скрипта возникает следующая ошибка:

[root@shturman crypt]# ./crept1

i�Q�����{ph

DBD::Pg::st execute failed: ERROR: неверная последовательность байт имя кодировки «UNICODE»: 0xe58149

DBD::Pg::st fetchrow_array failed: no statement executing

Вот сам скрипт:

#!/usr/bin/perl

use DBI;

use Digest::MD5 qw(md5);

$crypted1=«111»;

$crypted=md5($crypted1);

chomp $crypted;

print «$crypted\n»;

$dbh = DBI->connect(’dbi:Pg:dbname=mail’, 'postgres’, 'post’);

$sql="INSERT INTO crypt (cr, non_cr) values (’$crypted’, '$crypted1\′)»;

$sth = $dbh->prepare($sql) or die «can’t…»;

$sth->execute;

while (@row = $sth->fetchrow_array)

{print «$row: @row $row\n»;}

print $!.«\n»;[root@shturman crypt]#

Некоторая дополнительная информация:

версия pgsql 8.0.3.

mail=> \l

Список баз данных

Имя | Владелец | Кодировка

———--+——————+——————--

mail | postgres | UNICODE

template0 | postgres | UNICODE

template1 | postgres | UNICODE

(записей: 3)

mail=> \d+ crypt

Таблица «public.crypt»

Колонка | Тип | Модификаторы | Описание

—————-+———————--+————————--+——————

cr | character varying(50) | |

non_cr | character varying(50) | |

Индексы:

«idx_crypt» UNIQUE, btree (cr)

Содержит OIDs: да

/var/lib/pgsql/data/postgresql.conf содержит следующие настройки по поводу кодировок:

client_encoding = sql_ascii

lc_messages = 'ru_RU.UTF-8\′

lc_monetary = 'ru_RU.UTF-8\′

lc_numeric = 'ru_RU.UTF-8\′

lc_time = 'ru_RU.UTF-8\′

Кто сталкивался — подскажите, пожалуйста, где я не прав? Вторую неделю рою документацию и все безтолку.

// Тему переместил(а) fly4life из форума «Общий по UNIX и open-source».