[英]Cannot connect to Laravel mysql database
我在与laravel连接到mysql数据库时遇到问题。 我已将localhost更改为localhost:8091,因为这是我的Wamp服务器中的本地服务器名称。 我还安装了监听其他端口的xampp和uniserver。 laravel是否可能与我安装在计算机中的其他服务器混淆了? 例如,不仅用于url,还用于phpmyadmin。
这是错误
Connector.php第119行中的PDOException:找不到驱动程序
这是我的.env文件
APP_ENV=local
APP_KEY=base64:h0GyUa1VdjV22LXpRiOSOw+9HxXV+Qm0XO2zz9RRz6s=
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=http://localhost:**8091**
DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=test1
DB_USERNAME=root
DB_PASSWORD=
这是我的config.php文件
'mysql' =>
array (
'driver' => 'mysql',
'host' => 'localhost',
'port' => '3306',
'database' => 'test1',
'username' => 'root',
'password' => '',
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => true,
'engine' => NULL,
),
这是我的database.php文件
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', 'localhost'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'test1'),
'username' => env('DB_USERNAME', 'root'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => true,
'engine' => null,
],
解决正确答案的最后评论
您可以快速检查php config是否存在问题。 找到您的php.ini文件,它应该位于xampp文件夹中的某个位置-如果找不到文件,请进行文件搜索。
另外,您可以创建一个简单的文件,如下所示:
<?php
phpinfo();
或者以laravel的方式来做:
Route::get('info', function() { phpinfo(); });
现在通过浏览器调用该路由-您将看到php配置。
您正在寻找的是pdo_mysql。 查看是否已启用。 如果不是,请转到您的php.ini文件并找到以下行:
extension=php_pdo_mysql.dll
确保未注释。 重新启动服务器,您应该一切顺利。
另外,您无需对database.php或app.php文件进行任何更改即可连接到数据库-更改.env就足够了,因此从源文件中删除数据库连接详细信息,而只需保留它们最初的状态即可。 由于您的大多数设置都与默认设置相同,因此仅需在.env中设置的参数是:
DB_DATABASE=test1
DB_USERNAME=root
试试这些,让我知道是否有帮助:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.