Php Laravel 4 artisan迁移无法连接到远程mysql db[HY000][1450]用户“myuser”@“mypc”的访问被拒绝(使用密码:是)

Php Laravel 4 artisan迁移无法连接到远程mysql db[HY000][1450]用户“myuser”@“mypc”的访问被拒绝(使用密码:是),php,mysql,laravel,database-connection,laravel-4,Php,Mysql,Laravel,Database Connection,Laravel 4,编辑:我终于意识到artisan正在尝试连接到我的机器,而不是在配置中指定的远程数据库主机。我假设它将检索主机地址以及用户名和密码。我将尝试在命令行上指定主机地址并发回 编辑2:我发现了问题。对主持人的技术支持误导了我的第一次编辑。问题是“1”和“l”之间的密码不匹配。对不起,浪费了你的时间 我正在开发一个Laravel4Web应用程序,并试图执行从sentry到远程mysql数据库的迁移。我已经能够使用存储在laravel中的相同凭据通过phpmyadmin进行连接,没有任何麻烦,但artis

编辑:我终于意识到artisan正在尝试连接到我的机器,而不是在配置中指定的远程数据库主机。我假设它将检索主机地址以及用户名和密码。我将尝试在命令行上指定主机地址并发回

编辑2:我发现了问题。对主持人的技术支持误导了我的第一次编辑。问题是“1”和“l”之间的密码不匹配。对不起,浪费了你的时间

我正在开发一个Laravel4Web应用程序,并试图执行从sentry到远程mysql数据库的迁移。我已经能够使用存储在laravel中的相同凭据通过phpmyadmin进行连接,没有任何麻烦,但artisan无法工作

以下是artisan命令和输出:

$ php artisan migrate --package=cartalyst/sentry

[PDOException]                                                               
SQLSTATE[HY000] [1045] Access denied for user 'myuser'@'mypc' (using password: YES)                                                          

migrate [--bench[="..."]] [--database[="..."]] [--path[="..."]] [--package[="..."]] [-- pretend] [--seed]
Laravel连接配置:

'default' => 'mysql',
[...]
'mysql' => array(
        'driver'    => 'mysql',
        'host'      => 'hostname.example.com',
        'database'  => 'mydb',
        'username'  => 'myuser',
        'password'  => 'supersecretpassword',
        'charset'   => 'utf8',
        'collation' => 'utf8_unicode_ci',
        'prefix'    => '',
   ),
我没有在本地安装mysql,只有apache、php和phpmyadmin。我的盒子是archlinux,我没有访问远程主机的权限


有什么想法吗?

您需要向该主机上的用户授予权限这是您连接的机器:

GRANT ALL ON mydb.* TO myuser@mypc IDENTIFIED by 'supersecretpassword';

我无法访问该主机以更改该主机,而phpmyadmin使用相同的用户和密码完美连接。如果这是一个权限问题,phpmyadmin是否也会连接失败?它们都是从同一台机器访问远程数据库。如果它们都是从同一台机器访问,则是正确的。您确定使用的用户名和密码相同吗?请尝试从pma select用户、mysql中的主机运行此查询。用户刚刚意识到,它不是试图连接到远程主机,而是本地计算机绕过配置。谢谢你的帮助,我编辑了这个问题,并将尝试在cmd-line上指定地址。那么很明显,你需要在本地计算机上创建该用户并为其设置授权