Создание учетной записи пользователя MySQL

Задача
Вам нужно создать учетную запись для соединения с сервером MySQL, установленным на определенном хосте.

Решение
Используйте предложение (statement) GRANT для создания пользовательской учетной записи MySQL. Затем установите соединение с сервером, указав имя и пароль из созданной учетной записи.

Обсуждение
Для соединения с сервером MySQL требуются имя пользователя и пароль. Дополнительно можно указать имя хоста, на котором работает сервер. Если параметры соединения не заданы явно, mysql использует значения по умолчанию. Например, если не указано имя хоста, mysql обычно считает, что сервер работает на локальном компьютере.

Следующий пример показывает, как использовать программу mysql для соединения с сервером и выполнения предложения GRANT, которое создаст пользовательскую учетную запись с правами на доступ к базе данных cookbook.

Аргументами mysql являются: –hlocalhost (указывает на соединение с сервером MySQL, работающим на локальном компьютере), –p (сообщает программе mysql о необходимости запрашивать пароль) и –u root (соединение от имени MySQL-пользователя root). Текст, вводимый пользователем, выделен полужирным шрифтом, а вывод программы – светлым шрифтом:

% mysql -h localhost -p -u root
Enter password: ******
mysql> GRANT ALL ON cookbook.* TO 'cbuser'@'localhost' IDENTIFIED BY 'cbpass';
Query OK, 0 rows affected (0.09 sec)
mysql> QUIT
Bye

Если после ввода команды mysql (первая строка) вы получите сообщение, указывающее на то, что программа не найдена или введена неправильная команда, обратитесь к рецепту

1.7.


Если же этого не произойдет, то в ответ на запрос пароля введите пароль пользователя root там, где в примере вы видите ******. (Если MySQL-пользователь root не имеет пароля, просто нажмите клавишу Return). Затем введите предложение GRANT, как показано выше. Если вы работаете с базой данных, отличной от cookbook, подставьте ее имя везде, где в предложении GRANT встречается cookbook. Обратите внимание на то, что даже если учетная запись пользователя уже заведена, выдача прав на доступ к базе данных все равно необходима. Однако в этом случае можно опустить часть IDENTIFIED BY 'cbpass', так как оставив ее, вы измените текущий пароль пользователя.

Часть 'cbuser'@'localhost' содержит информацию о хосте, с которого вы соединяетесь с сервером MySQL, чтобы получить доступ к базе данных cookbook. Чтобы создать пользователя для соединения с сервером, работающим на локальной машине, используйте localhost, как показано. Если же вы планируете устанавливать соединения с сервером с другого компьютера, подставьте его имя в предложение GRANT. Например, если вы как cbuser соединяетесь ссервером с хоста xyz.com, то предложение GRANT должно выглядеть так:

mysql> GRANT ALL ON cookbook.* TO 'cbuser'@'xyz.com' IDENTIFIED BY 'cbpass';

Вероятно, некоторых из вас могла смутить некоторая парадоксальность описанной процедуры.


Для того чтобы создать учетную запись пользователя для Учетные записи MySQL и учетные записи для входа в систему

Учетные записи MySQL – это не то же самое, что учетные записи для входа в вашу операционную систему. Например, MySQL-пользователь root не имеет ничего общего с UNIX-пользователем root, несмотря на то что их имена совпадают. То есть вполне вероятно, что у них разные пароли. Кроме того, это означает, что нельзя создать учетную запись MySQL, создав учетные записи для входа в систему; вместо этого необходимо использовать предложение GRANT. соединения с сервером MySQL, необходимо установить соединение с сервером с целью выполнить предложение GRANT.

Предполагается, что вы уже имеете возможность соединиться с сервером как MySQL-пользователь root, так как GRANT может применяться только таким пользователем, как root, – с правами администратора по созданию учетных записей. Если вы не можете соединиться с сервером от имени root, обратитесь к вашему администратору MySQL с тем, чтобы он выполнил для вас предложение GRANT. После того как это сделано, вы можете соединяться с сервером под собственным именем, создавать свою базу данных и вообще работать самостоятельно..



Оцените статью: (0 голосов)
0 5 0

Статьи из раздела MySQL на эту тему:
Создание базы данных и тестовой таблицы