web-dev-qa-db-fra.com

Quel est le mot de passe par défaut de mariadb sur fedora?

J'ai installé mysql via yum tout à l'heure et l'OS Fedora a installé mariadb pour moi. Je sais que mariadb est une nouvelle branche de mysql, mais je ne comprends pas pourquoi elle ne me demande pas de définir le mot de passe. J'ai essayé 123456 et ainsi de suite, mais j'ai échoué. Mon Fedora est nouvelle, et c’est la première fois que m’installer mysql/mariadb. Que dois-je faire pour cela?

55
Tony

De https://mariadb.com/kb/en/mysql_secure_installation/ :

Pour vous connecter à MariaDB afin de le sécuriser, nous avons besoin du mot de passe actuel de l'utilisateur root. Si vous venez d'installer MariaDB et que vous n'avez pas encore défini le mot de passe root, celui-ci sera vide. Vous devez donc appuyer sur Entrée ici.

le mot de passe sera vide

Je pense que c'est ta réponse.

52
Floris

J'ai eu le même problème. Il est vrai que le mot de passe est vide, mais le message d'erreur est affiché. La solution consiste simplement à utiliser "Sudo"

$ Sudo mysql

va ouvrir l'outil mysql

Pour sécuriser la base de données, vous devez utiliser à nouveau Sudo.

$ Sudo mysql_secure_installation
77
Alex Angelico

mariadb utilise par défaut le plug-in UNIX_SOCKET pour authentifier l'utilisateur root. https://mariadb.com/kb/en/mariadb/unix_socket-authentication-plugin/

"Parce qu'il s'est identifié au système d'exploitation, il n'a pas besoin de le refaire pour la base de données"

vous devez donc vous connecter en tant qu'utilisateur root sous unix pour vous connecter en tant que root dans mysql/mariadb:

Sudo mysql

si vous souhaitez vous connecter avec root à partir de votre utilisateur unix normal, vous pouvez désactiver le plug-in d'authentification pour root.

Au préalable, vous pouvez définir le mot de passe root avec mysql_secure_installation (le mot de passe par défaut est vide), puis laisser chaque utilisateur s'authentifier en tant qu'utilisateur root à:

Shell$ Sudo mysql -u root
[mysql] use mysql;
[mysql] update user set plugin='' where User='root';
[mysql] flush privileges;
[mysql] \q
39
redochka

Lucups, Floris a raison, mais vous dites que cela n'a pas résolu votre problème. J'ai rencontré les mêmes symptômes, où mysql (mariadb) n'accepterait pas le mot de passe vide qu'il devrait accepter, et '/ var/lib/mysql' n'existe pas.

J'ai trouvé que cette Moonpoint.com page était sur le point. Peut-être, comme moi, avez-vous essayé de démarrer le service mysqld au lieu du service mariadb. Essayer:

systemctl start mariadb.service
systemctl status mysqld service

Suivi de l'habituel:

mysql_secure_installation
12
Michael Greisman

Le mot de passe par défaut est vide. Plus précisément, vous n'avez même pas besoin d'un mot de passe pour vous connecter en tant que root sur l'hôte local. Vous avez juste besoin d'être root. Mais si vous devez définir le mot de passe la première fois (si vous autorisez l'accès à distance à root), vous devez utiliser:

Sudo mysql_secure_installation

Entrez un mot de passe vide, puis suivez les instructions.

Le problème que vous rencontrez est que vous devez être root lorsque vous essayez de vous connecter en tant que root à partir de la machine locale.

Sous Linux: mariadb acceptera une connexion en tant que root sur le socket (localhost) UNIQUEMENT SI L'UTILISATEUR LE DEMANDE IS ROOT. Ce qui signifie que même si vous essayez

mysql -u root -p

Et si vous avez le bon mot de passe, l'accès vous sera refusé. De même pour

mysql_secure_installation

Mariadb refusera toujours le mot de passe car l'utilisateur actuel n'est pas root. Vous devez donc les appeler avec Sudo (ou en tant qu’utilisateur root sur votre machine). Vous souhaitez donc utiliser localement:

Sudo mysql

et

Sudo mysql_secure_installation

Lorsque je passais de mysql à mariadb, il me fallait le comprendre.

12

Avait le même problème après avoir installé mysql mariadb 10.3. Le mot de passe n'étant pas NULL, appuyer simplement sur ENTRÉE ne m'a pas aidé. Donc finalement dû changer le mot de passe. J'ai suivi les instructions de ici . En résumé; arrête le serveur

Sudo systemctl stop mariadb.service

accéder au serveur via une porte dérobée en démarrant le serveur de base de données et en ignorant la mise en réseau et les tables d'autorisations.

Sudo mysqld_safe --skip-grant-tables --skip-networking &

se connecter en tant que root

Sudo mysql -u root

puis changez le mot de passe du serveur

use mysql;
update user set password=PASSWORD("new_password_here") where User='root';

Notez qu'après la version 5.7 de MySQL, le champ mot de passe de la table mysql.user a été supprimé. Désormais, le nom du champ est 'authentication_string'. Donc, utilisez le nom de table approprié basé sur la version de mysql. enfin enregistrer les modifications et redémarrer le serveur

flush privileges;
Sudo systemctl stop mariadb.service
Sudo systemctl start mariadb.service
5
Anum Sheraz

Si votre base de données est installée correctement et que vous avez saisi un mot de passe incorrect, l'erreur sera générée:

ERROR 1698 (28000): Access denied for user 'root'@'localhost'

L'erreur suivante indique que la base de données n'a pas été démarrée/installée complètement. Votre commande ne peut pas localiser et parler avec votre instance de base de données.

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2 "No such file or directory")

Une bonne pratique serait de changer votre mot de passe après une nouvelle installation.

$ Sudo service mysql stop
$ mysqld_safe --skip-grant-tables &
$ Sudo service mysql start
$ Sudo mysql -u root

MariaDB [(none)]> use mysql;
MariaDB [mysql]> update user set password=PASSWORD("snafu8") where User='root';
MariaDB [mysql]> flush privileges;
MariaDB [mysql]> exit;

$ Sudo service mysql restart

OR

mysqladmin -u root password 'enter password here'
5
Dhruvan Ganesh

Je crois avoir trouvé les bonnes réponses à partir d'ici.

GitHub Wnmp

Donc en général, il dit ceci:

utilisateur: root
mot de passe: mot de passe

C'est pour la version 10.0.15-MariaDB, installée via Wnmp ver. 2.1.5.0 sur Windows 7 x86

3
Matija

Le mot de passe par défaut pour Mariadb est vide.

$ mysql -u root -p
Enter Password:    <--- press enter
1
rahul kumar

Pour moi, password = admin, a travaillé. Je l'ai installé avec pacman, Arch ( Manjaro KDE ).

NB: MariaDB était déjà installé, en tant que dépendance de Amarok .

1
Adeel Ansari

Par défaut, une installation MariaDB a un utilisateur anonyme, ce qui permet à quiconque de se connecter à MariaDB sans avoir à créer un compte utilisateur. Ceci est destiné uniquement à des tests et pour rendre l'installation plus fluide. Vous devez les supprimer avant de passer dans un environnement de production.

1
neildt

il suffit de basculer votre utilisateur actuellement connecté à la racine et de vous connecter sans mot de passe mysql -uroot

0
Arash Mohammadi