Спасибо voretaq7, теперь я понимаю проблему.
Так, что это?
Проблема - это createdb
vdoesn't читают переменную среды LC_ALL
когда шаблонная база данных используется. С флагом -e
мы можем se это давать следующую команду к серверу:
CREATE DATABASE gnattracker ENCODING 'SQL_ASCII' TEMPLATE template0;
В том особом случае информация о локали из шаблона используется для новой базы данных. И кодирование является несовместимым с этими настройками локали. Это было, вероятно, потому что LC_ALL
не был установлен на C
когда базы данных были инициализированы с initdb
.
Простое решение состояло бы в том, чтобы изменить настройки локали от template0
. Таким образом, я попробовал:
ALTER DATABASE template0 SET LC_CTYPE TO 'C';
ALTER DATABASE template0 SET LC_COLLATE TO 'C';
Проблема состоит в том, что настройки локали не могут быть изменены вообще.Какая досада. Так, я разрешил клонироваться template0
с новыми настройками локали и заменой существующее template0
с его клоном:
CREATE DATABASE template0b TEMPLATE template0 LC_COLLATE 'C' LC_CTYPE 'C';
DROP DATABASE template0;
ALTER DATABASE template0b RENAME TO template0;
Вещь тритона состоит в том, чтобы сказать PostGreSQL это template0
шаблон и что Вы не должны быть владельцем базы данных для копирования его:
UPDATE pg_database SET datistemplate = TRUE WHERE datname = 'template0';
Это решило мою проблему (см. также эту проблему).
Вы можете управлять и контролировать все блейд-серверы в домене Cisco UCS через Cisco UCS Manager. Некоторые задачи управления блейд-сервером, такие как изменение состояния питания, могут выполняться с сервера и профиля службы. Остальные задачи управления могут выполняться только на сервере.