linux用mysqldump备份数据库遇到问题Got error: 1045: Access denied for user 'root'@'localhost' (using password:

当尝试使用mysqldump备份数据库时遇到1405错误,通常表现为访问拒绝。常规解决方法包括通过mysql客户端更新root用户的密码并刷新权限,但此方法在某些情况下无效。在Windows系统中,可能需要在my.ini配置文件中添加skip-grant-tables,然后重启MySQL,以无权限检查方式登录,更改密码,刷新权限,最后移除该选项并再次重启MySQL。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

解决办法(这部分是看到网友们的)

登录mysql客户端

mysql -hserverip -uroot -p

mysql> update user set password=password('new password') where user='root';
Query OK, 4 rows affected (0.00 sec)
Rows matched: 4  Changed: 4  Warnings: 0

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> quit


执行完了以上操作步骤之后,再执行备份,依然报同样的错,最终解决办法是在备份命令上也要加上-h serverip,但是我公司一台普通主机装了linux系统,放了一些公司内部用的系统,备份时就没有出现这个问题。虽然最终问题是解决了,但是原理还是不知道,求知道的大神告诉我一下,感激不尽


---------------------------------------------------------------------------分割线=--------------------------------------------------------------------------------------------------

以上是自己备份mysql时发生1405错误,今天帮隔壁公司安装一个hr软件,要设置数据库时在window系统又发生了这样的错误,按照以上的方法在命令加-hserverip竟然也还行不行,各种百度,解决方案大都也是像上面一样修改一下root用户的密码,问题是在执行mysql -uroot -ppassword这句命令登录mysql也是报1405。最终在一篇博客上找到 解决方法,方法如下:

1.在mysql的安装目录下,找到mysql的配置文件my.ini[mysqld]这个条目下加入skip-grant-tables(登录时不使用授权表),保存,重启mysql.


2.之后在cmd输入mysql -uroot -p按回车,出现password,直接回车可以成功登录mysql,不会报1405了。


3.在显示mysql>的命令行里输入use mysql,回车,再输入update user set password=password("新密码") where user="root";


4.输入flush privilges;(刷新数据库),再输入quit(退出数据库)


5.最后一步就是在my.ini里面把之前加入的skip-grant-tables删除或用#注释掉。再重启mysql。之后再用mysql -uroot -ppassword登录就不会再报1405了






引用:mysqldump: Got error: 1045: Access denied for user 'root'@'localhost' (using password: YES) when trying to connect 。 引用: C:\Users\Administrator>d: D:\>cd MySQL\Program Files\MySQL\MySQL Server 5.6\bin D:\MySQL\Program Files\MySQL\MySQL Server 5.6\bin>mysqldump --all-databases -uro or -p > all.sql Enter password: ************** mysqldump: Got error: 1045: Access denied for user 'roor'@'localhost' (using pas sword: YES) when trying to connect D:\MySQL\Program Files\MySQL\MySQL Server 5.6\bin> 2、错误原因 。 引用:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 解决: 1.打开在创建mysql容器时挂载的conf目录下的mysqld.cnf(如下文件) 我创建docker的姿势 2.进入mysqlId.cnf文件中在...。 问题:请告诉我,mysqldump: Got error: 1045: Access denied for user 'root'@'localhost' (using password: YES) when trying to connect 是什么错误,以及如何解决它? mysqldump: Got error: 1045: Access denied for user 'root'@'localhost' (using password: YES) when trying to connect 是一个错误提示,意味着在尝试连接时,对于用户'root'@'localhost'的访问被拒绝。这个错误通常是由于密码错误或权限问题导致的。 解决这个问题的方法如下: 1. 确保输入的密码正确。在使用mysqldump时,需要提供正确的密码。请检查密码是否正确输入,并注意区分大小写。 2. 检查用户权限。查看用户'root'@'localhost'的权限是否被正确设置。如果权限不正确,可以通过修改权限或创建新的用户来解决这个问题。 3. 检查MySQL服务器配置。有时候,配置文件中的设置可能导致访问被拒绝。请检查MySQL服务器的配置文件,如mysqld.cnf,确保配置正确。可以根据需要进行修改。 请根据具体情况采取以上步骤来解决mysqldump: Got error: 1045: Access denied for user 'root'@'localhost' (using password: YES) when trying to connect 错误。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值