插件' unix_socket'从Mariadb恢复备份后,未在Mysql中加载

时间:2017-01-24 10:16:28

标签: mysql mariadb unix-socket

我正在使用Mysql没有任何问题,我不小心从Mariadb导入了一个备份到我的Mysql数据库,但是在会话过期后,我无法登录到Mysql命令,Phpmyadmin,我收到以下错误:

ERROR 1524 (HY000): Plugin 'unix_socket' is not loaded

当我打开我的项目时,我收到以下错误:

SQLSTATE[HY000] [1045] Access denied for user 'root'@'localhost' (using password: YES)

我打开了我意外恢复的备份文件,我看到这条线,我认为可能会导致问题:

LOCK TABLES `user` WRITE;
/*!40000 ALTER TABLE `user` DISABLE KEYS */;
INSERT INTO `user` VALUES ('localhost','root','*9CFBBC772F3F6C106020035386DA5BBBF1249A11','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','',0,0,0,0,'unix_socket','','N','N'),('localhost','erp','*818D35E17EDCC5FB9EFE28A7813DB1D7ED1AB5A3','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','N','','','','',0,0,0,0,'','','N','N');
/*!40000 ALTER TABLE `user` ENABLE KEYS */;
UNLOCK TABLES;

为什么Unix Socket阻止我登录Mysql并使用它,我该如何解决?

1 个答案:

答案 0 :(得分:2)

关闭服务器。

使用--skip-grant-tables选项启动服务器。

连接到服务器,运行

UPDATE mysql.user SET plugin = '' WHERE plugin = 'unix_socket';
FLUSH PRIVILEGES;

关闭连接。

之后你应该可以正常连接。

Unix socket plugin允许本地用户使用系统凭据连接到数据库服务器。 MySQL在插件字段中找到“东西”并尝试将其用作身份验证插件,但由于MySQL安装自然没有插件,因此身份验证失败,并且没有回退到基于密码的身份验证,因此问题