在Ubuntu 15.10上,在某一点(可能在安装和删除mariadb之后),mysql无法运行.任务已启动,但服务器已关闭.
在命令:
mysql -u root -p
系统回复如下:
mysql "ERROR 1524 (HY000): Plugin 'unix_socket' is not loaded"
无法登录,未找到插件,配置文件中没有错误(全部为默认值).
如何恢复控制,并使mysql服务器运行?
解决方法:
mysql身份验证过程调用了“unix_socket”(可能与数据库部分迁移到mariadb有关,现已删除).为了让所有的东西恢复工作去su:
sudo su
然后按照:
/etc/init.d/mysql stop
mysqld_safe --skip-grant-tables &
mysql -uroot
这将完全停止mysql,绕过用户身份验证(无需密码)并使用用户“root”连接到mysql.
现在,在mysql控制台中,使用mysql管理db:
use mysql;
要将root密码重置为mynewpassword(根据您的意愿更改),只需确保它:
update user set password=PASSWORD("mynewpassword") where User='root';
这一个将覆盖身份验证方法,删除unix_socket请求(以及其他所有内容),恢复正常和工作密码方法:
update user set plugin="mysql_native_password";
退出mysql控制台:
quit;
停止并启动与mysql相关的所有内容:
/etc/init.d/mysql stop
kill -9 $(pgrep mysql)
/etc/init.d/mysql start
不要忘记退出su模式.
现在mySQL服务器启动并运行.您可以使用root登录:
mysql -u root -p
或者你想要什么.密码使用有效.
而已.
标签:mysql,server
来源: https://codeday.me/bug/20190807/1609543.html