Php Laravel 4 artisan迁移无法连接到远程mysql db[HY000][1450]用户“myuser”@“mypc”的访问被拒绝(使用密码:是)
编辑:我终于意识到artisan正在尝试连接到我的机器,而不是在配置中指定的远程数据库主机。我假设它将检索主机地址以及用户名和密码。我将尝试在命令行上指定主机地址并发回 编辑2:我发现了问题。对主持人的技术支持误导了我的第一次编辑。问题是“1”和“l”之间的密码不匹配。对不起,浪费了你的时间 我正在开发一个Laravel4Web应用程序,并试图执行从sentry到远程mysql数据库的迁移。我已经能够使用存储在laravel中的相同凭据通过phpmyadmin进行连接,没有任何麻烦,但artisan无法工作 以下是artisan命令和输出: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
$ 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上指定地址。那么很明显,你需要在本地计算机上创建该用户并为其设置授权