Я просто вошел в систему 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)
Что дальше.
Для входа в систему в 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';
sudo mysqld_safe --skip-grant-tables
вход в систему ===============================
mysql -u root
предоставление ===============================
GRANT ALL PRIVILEGES ON `%`.* TO 'root'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
, я думаю, что это будет также работать...