【发布时间】:2023-03-22 20:17:01
【问题描述】:
我早就忘记了我的一个盒子上的 root 用户的密码。有没有一种方法可以在无需登录实例的情况下更改它,或者我必须重新安装?
【问题讨论】:
-
这可能对“Recover MySQL root password”有所帮助。
标签: mysql
我早就忘记了我的一个盒子上的 root 用户的密码。有没有一种方法可以在无需登录实例的情况下更改它,或者我必须重新安装?
【问题讨论】:
标签: mysql
第 1 步
停止数据库:
shell> /etc/init.d/mysql stop
第 2 步
重启数据库
只能通过它的 sock 文件 '/var/lib/mysql/mysql.sock' 访问数据库。
shell> mysqld --user=mysql --pid-file=/var/lib/mysql/mysqld.pid \
--socket=/var/lib/mysql/mysql.sock --datadir=/var/lib/mysql \
--skip-grant-tables --skip-networking &
第 3 步
连接数据库并修改密码:
shell> mysql --database mysql --socket=/var/lib/mysql/mysql.sock
如果您愿意,请显示所有用户:
mysql> select User, password from user;
设置新密码:
mysql> update user set password=password('NEW PASS') WHERE User='USERNAME';
离开数据库连接:
mysql> exit
第 4 步
“正常”重启数据库服务器。
shell> kill `cat /var/lib/mysql/mysqld.pid`
shell> /etc/init.d/mysql start
【讨论】:
快速谷歌得到了这个答案。在 root shell 类型中:
mysqladmin -u root password <password>
【讨论】:
如果您运行的是 Ubuntu 服务器(可能还有 Debian?),您可以轻松重置。
如果你在 12.04:
sudo dpkg-reconfigure mysql-server-5.5
如果您在 10.04:
sudo dpkg-reconfigure mysql-server-5.1
如果你不确定安装了哪个mysql-server版本,你可以试试:
dpkg --get-selections | grep mysql-server
查看更多信息:
https://help.ubuntu.com/12.04/serverguide/mysql.html https://help.ubuntu.com/10.04/serverguide/mysql.html
【讨论】: