Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MySQL > Ошибка 1364


Автор: falcon39 30.3.2006, 13:00
Делаю запрос на добавление пользователя
insert into user (host,user,password) values ('%','admin','admin');
сервер выдает ошибку ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value
помогите разобраться

Автор: PARROT 30.3.2006, 13:06
Код

insert into user (host,user,password) values ('','admin','admin');

Автор: Ignat 30.3.2006, 14:29
PARROT, нет, здесь проблема другая. Некоторые поля таблицы не имеют значения по умолчанию, следовательно должны быть обязательно упомянуты во вставке.

Читаем http://dev.mysql.com/doc/refman/4.1/en/adding-users.html.

Автор: Бонифаций 30.3.2006, 20:41
falcon39, лучше использовать операцию grant для заведения пользователей.

Автор: Ignat 31.3.2006, 08:49
Бонифаций, бесспорно, но есть случай, когда GRANT просто не работает (--skip-grant-tables) smile

Автор: Бонифаций 31.3.2006, 14:26
строго говоря режим --skip-grant-tables и не предназначен ни для работы, ни для добавления пользователей. Его единственное назначение - сбросить пароль рута. Всю оставшуюся работу (добавлять/удалять пользователей и тд) - уже надо делать в штатном режиме.

Кстати с версии 5 есть специальный оператор create user (но тоже для штатного режима)

Автор: Ignat 31.3.2006, 14:30
Цитата(Бонифаций @ 31.3.2006, 14:26 Найти цитируемый пост)
строго говоря режим --skip-grant-tables и не предназначен ни для работы, ни для добавления пользователей.

В случае если он (рут) создан... А вот если его нет? Всякое в жизни бывает...

Автор: Бонифаций 31.3.2006, 14:42
в таком случае лучше сформировать тестовой файл с нужными командами (добавления рута с паролем) и запустить mysqld в режиме инициализации (
mysqld --init-file=твойскрипт )

Автор: falcon39 7.4.2006, 09:03
Спасибо уже разобрался.
Тема закрыта.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)