#mysql
#mysql
Вопрос:
Я попытался использовать команду «создать пользователя» в базе данных MySQL4 (что-то похожее на то, что доступно в документах MySQL5), но это не удалось. Может кто-нибудь предоставить мне правильный синтаксис?
Комментарии:
1. Вы просмотрели старую документацию? dev.mysql.com/doc/refman/4.1/en/user-account-management.html
2. По какой причине вы используете Mysql4, а не Mysql5?
3. @Harry — Клиент все еще использует 4: (
4. Какова полная
create user
команда, которую вы пробовали до сих пор?5. @Tom — Он не работал с пользователем create, но работал с инструкцией grant.
Ответ №1:
Пользователи создаются при первом GRANT
предоставлении им привилегий.
Из http://dev.mysql.com/doc/refman/4.1/en/grant.html :
Оператор GRANT создает учетные записи пользователей MySQL и предоставляет права учетным записям.
Итак, допустим, у вас есть база данных «mydb» с таблицей «mytable». Если вы хотите создать пользователя «jason» с паролем «pwd123!», У которого есть привилегии выбора в этой таблице, вы можете сделать это:
grant select on mydb.mytable to 'jason'@'hostname' identified by 'pwd123!';
Применяются обычные предостережения относительно имени хоста.
Если вы хотите предоставить Джейсону полные права доступа к mydb:
grant all on mydb.* to 'jason'@'hostname' identified by 'pwd123!';
Важное примечание: каждый раз, когда вы используете identified by
, вы меняете пароль для этого пользователя / имя хоста, поэтому вы обычно используете этот синтаксис только при создании пользователя!