错误1044(42000):用户'@'localhost'

时间:2019-04-02 07:48:04

标签: mysql perl

我正在研究一个Perl脚本,该脚本使用mysqldiff比较两个数据库,然后将更改应用于第一个数据库。我正在使用的命令:

mysqldiff --host=$dbHost --user=$dbUser -A $dbName1 $dbName2

我有所不同,但之后总是会发生以下错误:

ERROR 1044 (42000): Access denied for user ''@'localhost' to database <NAME OF THE DATABASE>

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

我是否认为您至少收到以下消息?

  

nApply以上更改为$ db0 [y / N]吗?

如果是,似乎MySQL::Diff的auth_args不起作用。 您可以尝试使用其他语句:

  

GetOptions(\%opts,“ help |?”,“ debug | d:i”,“ apply | A”,“ batch-apply | B”,              “保留旧表| k”,“保留旧列| c”,“无旧定义| n”,              “ only-both | o”,“ table-re | t = s”,              “主机| h = s”,“端口| P = s”,“套接字| s = s”,“用户| u = s”,“密码| p:s”,              “ host1 = s”,“ port1 = s”,“ socket1 = s”,“ user1 = s”,“ password1:s”,              “ host2 = s”,“ port2 = s”,“ socket2 = s”,“ user2 = s”,“ password2:s”,              “宽容| i”,“单笔交易| S”,“列表表| l”             )

(请参见源代码)

如果这不起作用,请尝试使用

在调试模式下启动它
  

-d,--debug