忘记mysql根密码
我很久没有使用PHP MySQL了,现在我需要再次使用它。但问题是我忘记了MySQL控制台的密码。尝试登录到PHPMyAdmin时出现错误#1045 在MySQL站点中,我看到了一篇关于如何重置根密码的文章() 步骤是忘记mysql根密码,mysql,passwords,root,reset,Mysql,Passwords,Root,Reset,我很久没有使用PHP MySQL了,现在我需要再次使用它。但问题是我忘记了MySQL控制台的密码。尝试登录到PHPMyAdmin时出现错误#1045 在MySQL站点中,我看到了一篇关于如何重置根密码的文章() 步骤是 create a mysql-init.txt file containing UPDATE mysql.user SET Password=PASSWORD('newpass') WHERE User='root'; FLUSH PRIVILEGES; 我将其保存为C:\me
create a mysql-init.txt file containing UPDATE mysql.user SET Password=PASSWORD('newpass') WHERE User='root';
FLUSH PRIVILEGES;
我将其保存为C:\me\mysql init
我在命令提示符中写道--
我也试过用双反斜杠,但不起作用。MySQL控制台要求输入密码,但不接受新密码。我做错了什么?我在那里有几张桌子。怎么办
提前感谢。试着用--skip grant表启动mysql
service mysql.server stop
service mysql.server start --skip-grant-tables
然后使用mysql命令行连接到mysqld,而不使用用户名/密码
shell>mysql
然后发出命令
> mysql> UPDATE mysql.user SET Password=PASSWORD('MyNewPass')
> WHERE User='root'; mysql> FLUSH PRIVILEGES;
我无法在Adelave的工作答案中获得mysqld。但这对我来说却起了作用 使用--skip grant表停止并启动mysql
service mysql.server stop
service mysql.server start --skip-grant-tables
然后不使用用户名/密码连接到mysqld
mysql
然后在mysql命令行上更新密码
mysql> UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> \q
然后正常重启mysql
service mysql.server restart
如果其他答案没有帮助,您可以尝试卸载/重新安装mysql。它在我的ubuntu服务器上工作:
$sudo apt-get purge mysql*
$sudo apt-get autoremove
$sudo apt-get autoclean
更新分发
$sudo apt-get dist-upgrade
并重新安装
$sudo apt-get install mysql-server
使用SQLYog可以执行命令
- 用户创建
- 授权书
- 在MySQL 8.0中更改密码
(或者如果您知道身份验证字符串,请直接将其设置为更新) 在较低版本的mysql中更改密码
GRANT USAGE ON *.\* TO 'tester'@'localhost' IDENTIFIED BY 'Pass123#d'
SET PASSWORD FOR 'tester'@'localhost' = PASSWORD('Pass123#d');**
以下是需要遵循的步骤:
$MySQL--help | grep-a1“默认选项”
/etc/mysql/mysql.conf.d/mysqld.cnf
$sudo nano/etc/mysql/mysql.conf.d/mysqld.cnf
[mysqld]
块下添加跳过授权表
,并保存更改sudo service MySQL Restart
sudo服务MySQL状态
$mysql-u root登录mysql
root
密码:skip grant tables
行或使用
(散列)对其进行注释,恢复MySQL配置文件更改$brew服务停止mysql
$pkill mysqld
//警告:删除所有表
$rm-rf/usr/local/var/mysql/
$brew postinstall mysql
$brew服务重新启动mysql
$mysql-u root
欢迎使用MySQL监视器。命令以结束;或\g。
mysql>更改用户“root”@“localhost”,由“p4ssword”标识;
查询正常,0行受影响(0.04秒)
mysql>退出
拜伊
那么你就回到了dev的正常状态
$sudo mysql-u root-p
输入密码:
欢迎使用MySQL监视器。命令以结束;或\g。
我不喜欢在我的.env
文件中看到root
这个词,所以我通常在创建网站(如www.hockeysticks.net)之后再这样做:
#
创建数据库曲棍球;
创建用户'hockeysticks'@'localhost',由'hockeysticks'标识;
授予曲棍球的所有特权。*给“曲棍球”@“本地主机”;
那么您的localdev.env
文件就很简单了:
DB_数据库=曲棍球棒
DB_USERNAME=曲棍球棍
DB_PASSWORD=曲棍球棒
注意:如果需要保留数据库,请使用跳过授权表
方法。它有三个硬部分:
跳过授权表重新启动它
FLUSH privileges代码>
非常感谢您的回复。它目前正在工作。现在我可以登录到phpmyadmin来复制我要保存的所有表。谢谢。但是当我稍后重新打开wamp服务器时,它不会使用密码。我必须经历与mysqld相同的过程--跳过授权表。我安装的mysql版本没有密码密码列改为:更新mysql.user set authentication_string=Password('MyNewPass'),其中user='root';无法将datadir设置为/var/lib/mysql/如果您的sql版本告诉您它不是“使用near('MyNewPass')的正确语法”:
ALTER USER'root'@'localhost'由'MyNewPass'用mysql\本地\密码标识
“非常感谢您的回复。它目前正在运行。
”-在这种情况下,请接受答案,这将有助于其他人进一步阅读此问题。适用于Mac OSX 10.9.1上的MysQL 5.6.16,适用于我;-)start-skip grant tables
命令抛出错误!服务器在不更新PID文件的情况下退出错误..-这段视频帮助我更改了一台生产服务器的密码。这是否回答了你的问题?
CREATE USER 'tester'@'localhost' IDENTIFIED BY 'Pass123#d'
GRANT ALL PRIVILEGES ON sakila.* TO 'tester'@'localhost'
ALTER USER 'tester'@'localhost' IDENTIFIED BY 'Pass123#d'
UPDATE mysql.user
SET authentication_string='*F9B62579F38BE95639ACB009D79427F2D617158F'
WHERE USER='root'***
GRANT USAGE ON *.\* TO 'tester'@'localhost' IDENTIFIED BY 'Pass123#d'
SET PASSWORD FOR 'tester'@'localhost' = PASSWORD('Pass123#d');**