не мог создать базу данных должный доступ запрещен

Я просто вошел в систему Ubuntu 12.04 как обычный пользователь (vivek) и открыл терминал для создания базы данных, я записал:

create database Hello;

и ошибка, которую я имел:

ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'vivek'

Если я вхожу в систему как пользователь root затем даже, MySQL не открывает и имеет сообщение об ошибке:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

Что дальше.

10
задан 5 May 2014 в 15:52

2 ответа

Для входа в систему в MySQL как пользователь root можно использовать:

mysql -u root -p

и затем введите свой пароль MySQL.


Для входа в систему как другой пользователь необходимо будет создать того пользователя сначала и предоставить ему полномочия.

Создайте пользователя, использующего - изменение newuser к имени пользователя Вы хотите и password к Вашему предпочтительному паролю.

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';

К сожалению, в этой точке newuser не имеет никаких полномочий сделать что-либо с базами данных.
Поэтому первая стадия должна предоставить пользователю полномочия сделать 'вещи'.
Для предоставления всех полномочий (выбор создайте, удалите, обновите, отбросьте, и т.д.) на всех базах данных и таблицах, работайте:

GRANT ALL PRIVILEGES ON * . * TO 'newuser'@'localhost';

Для предоставления определенного полномочия на конкретной базе данных и таблице просто работайте:

GRANT [type of privilege] ON [database name].[table name] TO '[username]'@'localhost';

Если когда-нибудь необходимо отклонять или отменять определенное полномочие, просто работать:

REVOKE [type of permission] ON [database name].[table name] FROM '[username]'@'localhost';

Источник: https://www.digitalocean.com/community/articles/how-to-create-a-new-user-and-grant-permissions-in-mysql

11
ответ дан 16 November 2019 в 15:38

откройте mysql в режиме сохранения

sudo mysqld_safe --skip-grant-tables

вход в систему ===============================

mysql как пользователь root

mysql -u root

предоставление ===============================

все ПОЛНОМОЧИЯ для того счета

GRANT ALL PRIVILEGES ON `%`.* TO 'root'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

, я думаю, что это будет также работать...

1
ответ дан 16 November 2019 в 15:38

Другие вопросы по тегам:

Похожие вопросы: