linux上mysql root密码忘记了怎么办
时间:2023-04-21 18:18
MySQL是一个广泛使用的关系型数据库管理系统,它是一个重要的开源软件。而在使用MySQL时,我们常常需要使用root账号登录MySQL,但是,如果你忘记了root账号的密码,该怎么办呢? 本文将介绍一些常见的解决方案,让你能够快速地回复 root 账号的访问权限。 方案一:使用mysqladmin命令 mysqladmin是MySQL自带的命令行工具,你可以使用它来修改root密码,具体操作方法如下: 打开终端,输入如下命令: sudo systemctl stop mysql 这个命令将关闭MySQL。之所以先关闭MySQL,是为了方便接下来修改密码。 输入如下命令来启用无密码登录: sudo mysqld_safe --skip-grant-tables & 这个命令将开启MySQL的临时权限,你可以暂时无需密码的访问 MySQL 数据库。 输入如下命令连接到 MySQL 数据库: mysql -uroot 输入完这个命令之后,你将进入到命令行模式。 修改root密码: use mysql; update user set authentication_string=password('123456') where user='root'; 这个命令将数据库中root的密码更改为“123456”,你也可以将这个密码替换成你想要设置的密码。 退出 MySQL 命令行模式: quit 重新启动 MySQL: sudo systemctl start mysql 用修改后的密码登录: mysql -u root -p 这个命令将要求你输入新密码来登录 MySQL。 方案二:使用init脚本 这个方案需要你拥有root权限。你可以使用Linux的init脚本,来重启MySQL并载入 SQL 脚本,以达到修改root密码的目的。 操作步骤如下: 停止 MySQL 服务: sudo /etc/init.d/mysql stop 创建包含 SQL 命令的文件: sudo nano /var/mysql-init 这个命令将在 /var 目录下创建一个 mysql-init 文件,并让你使用 nano 编辑器,输入以下内容: UPDATE mysql.user SET authentication_string=PASSWORD('123456') WHERE user='root'; 上面的命令将 root 的密码更改为“123456”。 启用 MySQL 服务: sudo /etc/init.d/mysql start 在 MySQL 开始启动时,它会自动在执行 SQL 命令文件中的命令,以修改 root 密码。 清理出错信息: sudo rm /var/mysql-init 如果你忘记root密码,使用这两个方案中的任意一个,都可以让你重新获得访问 MySQL 的权限。不过,使用方案一比较推荐,因为它更简单易懂,并且对 MySQL 的正常运行并无负面影响。 当然,为避免忘记密码,你应该建立一个更好的密码管理策略,比如使用密码管理工具存储你的 MySQL 密码,或者定期修改密码以提高安全性。 以上就是linux上mysql root密码忘记了怎么办的详细内容,更多请关注Gxl网其它相关文章!
FLUSH PRIVILEGES;