$ ./mysqladmin -u root -p 'redacted', Εισάγετε τον κωδικό πρόσβασης:
mysqladmin: σύνδεση με διακομιστή στο 'localhost' απέτυχε σφάλμα: 'Απαγορεύεται η πρόσβαση για τον χρήστη 'root'@'localhost' (με χρήση κωδικού πρόσβασης: YES)'
Πώς μπορώ να το διορθώσω αυτό;
/etc/my.cnf
ή /etc/mysql/my.cnf
, ανάλογα με τη διανομή σας.skip-grant-tables
κάτω από το [mysqld]
mysql -u root -p
.mysql> flush privileges;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword';
mysql -u root -p
.Στο MySQL workbench σας, μπορείτε να μεταβείτε στην αριστερή πλευρική γραμμή, κάτω από τη Διαχείριση επιλέξτε "Χρήστες και προνόμια", κάντε κλικ στο root κάτω από τους Λογαριασμούς χρηστών, στο δεξί τμήμα κάντε κλικ στην καρτέλα "Όρια λογαριασμού" για να αυξήσετε τα μέγιστα ερωτήματα, ενημερώσεις κ.λπ., και στη συνέχεια κάντε κλικ στην καρτέλα "Ρόλοι διαχειριστή" και τσεκάρετε τα κουτάκια για να δώσετε πρόσβαση στο λογαριασμό. Ελπίζω ότι αυτό βοηθάει!
Το έκανα αυτό για να ορίσω τον κωδικό πρόσβασης root στην αρχική ρύθμιση της MySQL στο OSx. Ανοίξτε ένα τερματικό.
sudo sh -c 'echo /usr/local/mysql/bin > /etc/paths.d/mysql'
Κλείστε το τερματικό και ανοίξτε ένα νέο τερματικό. Και τα παρακάτω δουλεύουν στο Linux, για να ορίσετε τον κωδικό πρόσβασης root.
sudo /usr/local/mysql/support-files/mysql.server stop
sudo mysqld_safe --skip-grant-tables
(sudo mysqld_safe --skip-grant-tables : Αυτό δεν λειτούργησε για μένα την πρώτη φορά. Αλλά στη δεύτερη προσπάθεια, ήταν επιτυχία).
Στη συνέχεια, συνδεθείτε στη MySQL
mysql -u root
FLUSH PRIVILEGES;
Τώρα αλλάξτε τον κωδικό πρόσβασης:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpassword';
Κάντε επανεκκίνηση της MySQL:
sudo /usr/local/mysql/support-files/mysql.server stop
sudo /usr/local/mysql/support-files/mysql.server start