php artisan migrate:install
{"error":{"type":"ErrorException","message":"PDO::__construct(): [2002] Connection refused (trying to connect via tcp:\/\/127.0.0.1:3306)","file":"\/Applications\/MAMP\/htdocs\/DRCSports\/vendor\/laravel\/framework\/src\/Illuminate\/Database\/Connectors\/Connector.php","line":47}}
在我的database.php中,我已将信息更新为mysql
'mysql' => array(
'driver' => 'mysql',
'host' => '127.0.0.1',
'database' => 'Laravel_DRCSports',
'username' => 'root',
'password' => 'root',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),
我不确定我是否理解错误,但对我来说,看起来我的laravel没有正确连接到mysql。如果是这种情况,我不知道如何解决它。
答案 0 :(得分:8)
问题是mysql在端口8888上运行,而Laravel的默认端口值是3306(因为它是mysql服务器的默认端口)。
解决方案是将“port”键添加到数组中(例如:'port'=> 8888)并且它将会 做这项工作。
答案 1 :(得分:2)
这就是我在/app/config/app.php
中所做的'mysql' => array(
'driver' => 'mysql',
'host' => 'localhost:8889',
'database' => 'pic',
'username' => 'root',
'password' => 'root',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),
并在php代码的底部
'redis'=>阵列(
'cluster' => false,
'default' => array(
'host' => '127.0.0.1',
'port' => 8888,
'database' => 0,
),
),
它必须工作...
答案 2 :(得分:0)
当我在3306以外的端口上使用MySQL时,我遇到了问题(Laravel 4)。
浏览器运行的应用程序需要以下app / config / database语法:
'mysql' => array(
...
'host' => 'localhost',
'port' => '8889',
...
)
虽然命令行运行工匠需要以下语法:
'mysql' => array(
...
'host' => 'localhost:8889',
...
)
这里描述的问题:
https://github.com/laravel/laravel/issues/1182
大多数文章建议使用Laravel环境进行解决方法,但它会导致重复的配置文件并违反DRY原则(不要重复自己),所以这是另一种选择:
在app / config / database.php的顶部:
$my_hostname = 'localhost';
$my_port = '8889';
$my_database = 'database';
$my_username = 'username';
$my_password = 'password';
if (App::runningInConsole()) { // artisan runs from the command line
// change 'localhost' to 'localhost:8889'
$my_hostname = $my_hostname.':'.$my_port;
}
进一步向下:
'mysql' => array(
'driver' => 'mysql',
'host' => $my_hostname,
'port' => $my_port,
'database' => $my_database,
'username' => $my_username,
'password' => $my_password,
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
),
干杯
答案 3 :(得分:0)
在config / database.php和.env文件中更改数据库信息。
答案 4 :(得分:0)
我做了这些改变并像冠军一样工作:
data.php中的: 主持人:localhost:8889 港口:8889 并且我的mamp有一个密码所以我有两种方法将密码放在database.php文件或.env文件中我将密码''值更改为'forge'然后在.env文件中使用我的MAMP密码 顺便说一下,您可以在端口选项卡(MySQL one)中看到MAMP应用程序中有关MAMP的具体信息
答案 5 :(得分:0)
确保编辑“.env”文件的这一部分。
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=8889
DB_DATABASE=blog
DB_USERNAME=root
DB_PASSWORD=root
这对我有用。
答案 6 :(得分:-1)
我想你可以通过在app / config / database语法中添加以下代码来解决这个问题:
'mysql' => array(
...
'pconnect' => 'TRUE',
...
)