che*_*014 4 server mysql permissions root password
我知道有些用户可能会说这是重复的,但我认真地梳理了半天以上的答案和互联网上的答案,我感到非常沮丧,我要爆炸了。
现在治疗解释已经完成,我已经从 Ubuntu 12.04 LTS 上的 Ubuntu 存储库中安装了 MySql Server 和 MariaDb 10,并在安装时输入 root 密码[出现粉红色屏幕并提示输入 root 密码时],安装通过像刀子穿过黄油一样顺畅。
现在真正的挫败感始于以下两种情况中的任何一种:
或者
2.当我输入mysql -u root -p命令并提示输入密码时。
请我真的需要这方面的帮助 - 我已经忘记了我不得不卸载并重新安装 MySQL 或 MariaDb 的次数,因为这种颈部疼痛是一个错误。
小智 10
检查文件: /etc/mysql/mariadb.conf.d/mysqld.cnf
验证此行是否存在:
plugin-load-add = auth_socket.so
Run Code Online (Sandbox Code Playgroud)
然后转到MariaDB:
sudo mysql -u root
Run Code Online (Sandbox Code Playgroud)
并进行这些修改:
MariaDB [(none)]>use mysql;
MariaDB [(none)]>update user set plugin=' ' where User='root';
MariaDB [(none)]>flush privileges;
MariaDB [(none)]>exit
Run Code Online (Sandbox Code Playgroud)
我没有访问权限mysqlworkbench,但是在我应用此解决方案后,一切都运行良好...
我想我可能已经解决了这个问题 - 它与长密码有关。我认为这应该作为错误报告给 MySQl 和 MariaDB 开发人员,因为在安装时您可以创建一个超过 100 个字符的密码,但是当您尝试在生产环境中登录 MySQl 或 MariaDB 时,您会收到上述错误。
很高兴我在经历了这么多痛苦之后发现了这一点——考虑到 MySQL 已经投入生产了多少年,这还没有被确定为一个错误,真是令人惊讶。
因此基本上一种解决方案是通过以下步骤来解决上述问题:
在非生产服务器上从空白密码开始,看看是否有效
如果步骤 1 成功,则通过输入以下命令继续保护 mysql 安装:sudo /usr/bin/mysql_secure_installation并尝试输入更复杂的密码 - 小写字母、数字、符号和至少 8 个大写字母的组合字符应该没问题。
我建议从 8 开始,然后向上移动,直到达到可输入字符数的上限。
上述内容应该是朝着确保 MySQL 服务器安全的正确方向迈出的一步。