impossible de créer la base de données en raison d'un accès refusé

10

Je viens de me connecter à Ubuntu 12.04 en tant qu'utilisateur normal (vivek) et j'ai ouvert le terminal pour créer une base de données, j'ai écrit:

create database Hello;

et l'erreur que j'ai eue est:

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

Si je me connecte en tant qu'utilisateur root, même MySQL ne s'ouvre pas et affiche le message d'erreur:

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

Que faire maintenant.

viveksinghggits
la source
1
Quelle commande avez-vous utilisée pour vous connecter à MySQL?
Parto
Je viens d'écrire mysql pour me connecter à MySQL
viveksinghggits

Réponses:

12

Pour vous connecter à MySQL en tant qu'utilisateur root, vous pouvez utiliser:

mysql -u root -p

puis entrez votre mot de passe MySQL.


Pour vous connecter en tant qu'autre utilisateur, vous devrez d'abord créer cet utilisateur et lui accorder des privilèges.

Créez l'utilisateur en utilisant - changez newuserle nom d'utilisateur que vous voulez et passwordle mot de passe de votre choix.

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

Malheureusement, à ce stade, il newusern'a aucune autorisation pour faire quoi que ce soit avec les bases de données.
Par conséquent, la première étape consiste à accorder à l'utilisateur les privilèges de faire des «choses».
Pour accorder tous les privilèges (sélectionner, créer, supprimer, mettre à jour, supprimer, etc.) sur toutes les bases de données et tables, exécutez:

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

Pour accorder un privilège spécifique sur une base de données et une table particulières, exécutez simplement:

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

Si jamais vous avez besoin de refuser ou de révoquer un certain privilège, exécutez simplement:

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

Source: https://www.digitalocean.com/community/articles/how-to-create-a-new-user-and-grant-permissions-in-mysql

Parto
la source
Thanx mec ... Cela m'a aidé
viveksinghggits
1

ouvrir le mysql en mode sauvegarde

sudo mysqld_safe --skip-grant-tables

===============================

connectez-vous à mysql en tant qu'utilisateur root

mysql -u root

===============================

accorder tous les PRIVILÈGES pour cette a / c

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

je pense que cela fonctionnera aussi ...

Sudip Das
la source