如何使用自定义数据库驱动程序将 GridDB 与 Laravel 集成?

问题描述 投票:0回答:1

我正在开发一个 Laravel 项目,我想使用 GridDB 作为我的数据库。由于 Laravel 没有对 GridDB 的内置支持,我试图创建一个自定义数据库驱动程序来处理连接,因为他们的文档中有一个 PHP 连接器。这是我到目前为止所做的:

  1. 创建自定义数据库驱动程序:

'connections' => [ // Other connections...

'griddb' => [
'driver' => 'griddb',
'host' => env('GRIDDB_HOST', '127.0.0.1'),
'port' => env('GRIDDB_PORT', 10001),
'cluster' => env('GRIDDB_CLUSTER', 'myCluster'),
'username' => env('GRIDDB_USERNAME', 'admin'),
'password' => env('GRIDDB_PASSWORD', 'admin'),
],
],
  1. 为其创建了一个服务提供商:
class GridDBServiceProvider extends ServiceProvider
{
public function register()
{
$this->app['db']->extend('griddb', function ($config, $name) {
$config['name'] = $name;
return new GridDBConnection($config);
});
}
}
  1. 添加了连接类:
class GridDBConnection extends Connection
{
protected $gridstore;



public function __construct(array $config)
{
$factory = StoreFactory::getInstance();
$this->gridstore = $factory->getStore([
'notificationMember' => $config['host'] . ':' . $config['port'],
'clusterName' => $config['cluster'],
'user' => $config['username'],
'password' => $config['password'],
]);



parent::__construct($this->gridstore);
}
}

  1. 添加服务提供商:
'providers' => [
// providers ..
App\Providers\GridDBServiceProvider::class,
]

所以当我尝试运行迁移时,我得到了

不受支持的驱动程序 [griddb]。

有谁知道发生了什么事,为什么连接器无法连接?

php laravel database connector griddb
1个回答
0
投票

您确定在操作系统上正确安装了 GridDB 吗?

确保您已安装适用于 PHP 的 GridDB 驱动程序并激活插件。

只需检查安装步骤:https://docs.griddb.net/gettingstarted/using-apt/#install-with-apt-get

© www.soinside.com 2019 - 2024. All rights reserved.