Я использую: mysql 5.5.43-0 на человечности 14.04.1
Я пытаюсь создать нового администратора-пользователя (администратор), которому разрешают сделать следующие вещи:
db4user1
.* К 'dbuser1' 'localhost';) - (предоставление разрешения на администратора-> не работает),У меня была проблема с шагом e.
Mysql показывает следующую ошибку: № 1044 - Доступ запрещен для пользователя 'администратор' 'localhost' к базе данных 'db4user1'
Вопрос: Какие дополнительные полномочия/полномочия нуждается в моем администраторе, чтобы сделать вышеупомянутые действия и не что иное как это.
Я думаю, что у моего администратора-пользователя были все полномочия предоставить существующему пользователю новой созданной базе данных...
Но это не работало.
Спасибо за помощь
Stephan
CREATE USER 'dbuser1'@'localhost' IDENTIFIED BY 'password1234'
SET PASSWORD FOR 'dbuser1'@'localhost' = PASSWORD('password5678')
GRANT USAGE ON *.* TO 'dbuser1'@'localhost' IDENTIFIED BY 'password5678' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;
CREATE DATABASE IF NOT EXISTS `db4user1`;
GRANT ALL PRIVILEGES ON `db4user1`.* TO 'dbuser1'@'localhost';
-> № 1044 - Доступ запрещен для пользователя 'администратор' 'localhost' к базе данных 'db4user1'
Мне кажется, что вы хотите создать еще одного администратора, например, по умолчанию root
, поэтому вы можете использовать простой синтаксис, например:
GRANT ALL ON *.* TO admin@localhost IDENTIFIED BY 'passwd5678' WITH GRANT OPTION;
Минимальное требование для предоставления достаточных прав данному пользователю (здесь admin
), чтобы иметь возможность предоставлять все привилегии для данной БД ( db4user1
здесь):
GRANT DROP ,
REFERENCES ,
INDEX ,
ALTER ,
CREATE TEMPORARY TABLES ,
LOCK TABLES ,
CREATE VIEW ,
EVENT,
TRIGGER,
SHOW VIEW ,
CREATE ROUTINE,
ALTER ROUTINE,
EXECUTE ON `db4user1` . * TO 'admin'@'localhost' WITH GRANT OPTION ;
Почти все ... кроме :
Создать
(область структуры) Выбрать
, Вставить
, Обновление
, Удалить
(Объем данных) Отсюда, используя admin
пользователь:
mysql> GRANT ALL PRIVILEGES ON db4user1.* TO 'dbuser1'@'localhost';
Query OK, 0 rows affected (0.00 sec)
Признаюсь, я не нашел для этого никаких документов. Раньше я тратил много времени на проверку всех возможностей путем исключения, одну за другой ...