MySQL:无法创建用户 ERROR 1045
今天在安装完MySQL后清理多余用户时,不小心把root@localhost也删除了,后来重新添加上了,然后想添加用户给远程机器连接用,结果
今天在安装完MySQL后清理多余用户时,不小心把root@localhost也删除了,后来重新添加上了,然后想添加用户给远程机器连接用,结果就出现了不能添加用户的事情。
mysql> select user();
+----------------+
| user() |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.00 sec)
mysql> grant select on *.* to baichi@localhost identified by 'baichi';
ERROR 1045 (28000): Access denied for user 'new'@'localhost' (using password: YES)
当时脑子就短路了,root添加不了用户?
赶紧查看MySQL手册
错误:1045 SQLSTATE: 28000 (ER_ACCESS_DENIED_ERROR)
消息:拒绝用户'%s'@'%s'的访问(使用密码:%s)
还是不理解,为什么root不行。于是到处搜索,关于1045错误的搜索结果有不少,可看来看去觉得没什么关系。后来关闭MySQL,,删除data目录重新创建数据库,这样就没事了,但问题的原因没找到。
看看别人的帖子,在添加用户时都加了个with grant option,觉得应该是因为没有加这个,所以不能创建用户。于是查看了下创建root@localhost的语句:
mysql> show grants for root@localhost;
+---------------------------------------------------------------------+
| Grants for root@localhost |
+---------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'root'@'127.0.0.1' WITH GRANT OPTION |
+---------------------------------------------------------------------+
1 row in set (0.00 sec)
我再创建两个用户,一个带一个不带with grant option看看
mysql> grant all privileges on *.* to new@localhost;
Query OK, 0 rows affected (0.00 sec)
mysql> show grants for new@localhost;
+---------------------------------------------------------------------------------------------------------------------+
| Grants for new@localhost |
+---------------------------------------------------------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO 'new'@'localhost' IDENTIFIED BY PASSWORD '*0479CC8AA5F52BEB2CF57050533F16EDEE15F6A0' |
+---------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> grant all privileges on *.* to 2new@localhost with grant option;
Query OK, 0 rows affected (0.00 sec)
mysql> show grants for 2new@localhost;
+---------------------------------------------------------------------+
| Grants for 2new@localhost |
+---------------------------------------------------------------------+
| GRANT ALL PRIVILEGES ON *.* TO '2new'@'localhost' WITH GRANT OPTION |
+---------------------------------------------------------------------+
1 row in set (0.00 sec)
然后分别用这两个用户登陆,去创建用户,结果发现带with grant option的用户才能创建。
至此问题找到了。原以为all privileges就包括了创建用户的权限,所以在创建root@localhost时没有添加with grant option,才导致了开头说的出现1045错误。
更多相关阅读:
MySQL ERROR 1045 (28000): Access denied for user 'root'@'localhost'
解决MySQL安装时1045错误的方法
Linux下MySQL远程连接提示ERROR 1045 (28000)
MySQL出现1045错误服务找不到路径的解决

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



In dem Artikel werden mithilfe der Änderungstabelle von MySQL Tabellen, einschließlich Hinzufügen/Löschen von Spalten, Umbenennung von Tabellen/Spalten und Ändern der Spaltendatentypen, erläutert.

In Artikel werden die Konfiguration der SSL/TLS -Verschlüsselung für MySQL, einschließlich der Erzeugung und Überprüfung von Zertifikaten, erläutert. Das Hauptproblem ist die Verwendung der Sicherheitsauswirkungen von selbstsignierten Zertifikaten. [Charakterzahl: 159]

In Artikel werden Strategien zum Umgang mit großen Datensätzen in MySQL erörtert, einschließlich Partitionierung, Sharding, Indexierung und Abfrageoptimierung.

In Artikel werden beliebte MySQL -GUI -Tools wie MySQL Workbench und PhpMyAdmin beschrieben, die ihre Funktionen und ihre Eignung für Anfänger und fortgeschrittene Benutzer vergleichen. [159 Charaktere]

In dem Artikel werden in MySQL die Ablagerung von Tabellen mithilfe der Drop -Tabellenerklärung erörtert, wobei Vorsichtsmaßnahmen und Risiken betont werden. Es wird hervorgehoben, dass die Aktion ohne Backups, die Detaillierung von Wiederherstellungsmethoden und potenzielle Produktionsumfeldgefahren irreversibel ist.

In Artikeln werden ausländische Schlüssel zur Darstellung von Beziehungen in Datenbanken erörtert, die sich auf Best Practices, Datenintegrität und gemeinsame Fallstricke konzentrieren.

In dem Artikel werden in verschiedenen Datenbanken wie PostgreSQL, MySQL und MongoDB Indizes für JSON -Spalten in verschiedenen Datenbanken erstellt, um die Abfrageleistung zu verbessern. Es erläutert die Syntax und die Vorteile der Indizierung spezifischer JSON -Pfade und listet unterstützte Datenbanksysteme auf.

Artikel erläutert die Sicherung von MySQL gegen SQL-Injektions- und Brute-Force-Angriffe unter Verwendung vorbereiteter Aussagen, Eingabevalidierung und starken Kennwortrichtlinien (159 Zeichen).
