SQLSTATE [HY000] [2003]无法连接到MySQL服务器'127.0.0.1'(61)错误Laravel 4.1

use*_*337 2 php mysql laravel laravel-4

我在本地主机上收到Laravel 4.1的以下错误(使用MAMP)

SQLSTATE[HY000] [2003] Can't connect to MySQL server on '127.0.0.1' (61)
Run Code Online (Sandbox Code Playgroud)

它指向:

/Applications/MAMP/htdocs/crowdsets/laravel-master/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php
Run Code Online (Sandbox Code Playgroud)

这是它指向的功能:

public function createConnection($dsn, array $config, array $options)
    {
        $username = array_get($config, 'username');

        $password = array_get($config, 'password');

        return new PDO($dsn, $username, $password, $options);
    }
Run Code Online (Sandbox Code Playgroud)

到目前为止,我还没有收到此错误.

我设置了本地环境和生产环境(默认).

在config/local/database.php我有:

'mysql' => array(
            'driver'    => 'mysql',
            'host'      => '127.0.0.1',
            'database'  => 'database',
            'username'  => 'root',
            'password'  => 'root',
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
        ),
Run Code Online (Sandbox Code Playgroud)

Jak*_*uld 6

这样的错误意味着服务器本身甚至无法访问.你在MAMP中启动了MySQL吗?

另外,你是如何开始MAMP的?使用标准的MySQL 3306端口?或者替代端口MAMP用于非管理员:8889

我敢打赌你的服务器正在运行,但是正在尝试连接,3306所以你需要将端口设置为8889.将配置更改为这样; 注意添加port参数:

'mysql' => array(
            'driver'    => 'mysql',
            'host'      => '127.0.0.1',
            'port'      => '8889',
            'database'  => 'database',
            'username'  => 'root',
            'password'  => 'root',
            'charset'   => 'utf8',
            'collation' => 'utf8_unicode_ci',
            'prefix'    => '',
        ),
Run Code Online (Sandbox Code Playgroud)

编辑:我刚刚发现这个问题线程,解决了通过端口将Laravel连接到MAMP的问题8889.