Comme vous le savez probablement, MySQL est un serveur de base de données . Cela signifie que vous avez besoin d’un client pour vous connecter à un serveur MySQL. Le mysql
programme de ligne de commande que vous utilisez est un tel client.
Comme avec beaucoup de systèmes, un serveur MySQL a ses propres comptes utilisateur et privilèges. Donc, si vous connectez un client à un serveur MySQL, vous devez fournir un nom d'utilisateur et (presque toujours) un mot de passe. Si vous ne fournissez pas mysql
de nom d'utilisateur, cela suppose que vous souhaitez utiliser le nom d'utilisateur UNIX / Linux sous lequel vous êtes connecté à votre serveur. Par exemple, si vous êtes connecté à votre serveur en tant que "joe", mysql
essayez d'utiliser l'utilisateur MySQL du même nom, "joe @ localhost". Comme vous le voyez, les comptes d’utilisateur MySQL contiennent toujours le nom d’hôte à partir duquel vous vous connectez. C'est automatiquement ajouté.
Si vous voulez vous connecter à votre serveur MySQL en tant qu’utilisateur 'joe @ localhost', vous pouvez le faire.
mysql -u joe
Avec cela, MySQL suppose que le serveur MySQL est exécuté sur le même ordinateur que le client (par conséquent, le nom d’hôte 'localhost' est automatiquement ajouté) et joe @ localhost 'n’a pas de mot de passe défini.
Si le compte utilisateur MySQL souhaité a un mot de passe défini, vous pouvez le mysql
demander au client avec
mysql -u joe -p
Et, par souci d'exhaustivité, si vous souhaitez vous connecter à MySQL sur une autre machine pendant l'exécution du client, vous pouvez effectuer les opérations suivantes:
mysql -h my-mysql-server.com -u joe -p
Dans votre cas particulier, le compte utilisateur MySQL auquel le mysql
client se connecte au serveur MySQL ne dispose pas des privilèges nécessaires pour créer une nouvelle base de données. Vous devez vous connecter en tant qu'utilisateur MySQL disposant de ces privilèges. Le compte d'utilisateur utilisé dépend de la configuration du serveur MySQL.
Henning Kockerbeck
la source