# zusätzliche externe Datenbankverbindung

**URL:** <https://forum.shopware.com/t/zusatzliche-externe-datenbankverbindung/41695>\
**Category:** Programmierung\
**Created:** [24. November 2016 um 15:19 UTC](https://forum.shopware.com/t/zusatzliche-externe-datenbankverbindung/41695 "2016-11-24T15:19:12Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![AlexGalax](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/alexgalax/32/9925_2.png) [@AlexGalax](https://forum.shopware.com/u/AlexGalax)\
**Post date:** [24. November 2016 um 15:19 UTC](https://forum.shopware.com/t/zusatzliche-externe-datenbankverbindung/41695/1 "2016-11-24T15:19:12Z")

</div>

Hallo zusammen,

für ein Plugin muss ich auf eine externe Datenbank zugreifen. Einen enstprechenden Service-Container habe ich angelegt.

Im Kernel wird die Verbindung wie folgt aufgebaut:

```
$dbConn = $this->config['db'];
$this->connection = Components\DependencyInjection\Bridge\Db::createPDO($dbConn);

```

Wie kann ich jetzt in meinem Service-Construcor, eine neue Dbal/PDO Verbindung aufbauen? So, dass ich die gleiche Resource habe, wie beim Zugriff über:

```
Shopware()->Container()->get('dbal_connection')

```

&nbsp;

Hier der Service-Container:

```
namespace ShopwarePlugins\MyPlugin\Component;

class Connection
{
    private $connection;

    public function __construct()
    {
        // connect here
        return $this->connection;
    }
}

```

Aufruf über:

```
$db= $controller->get('myplugin.connection');
$db->fetchRows("SELECT ...");

```

&nbsp;

---

<div class="post-metadata">

**Author:** ![d.coder](https://avatars.discourse-cdn.com/v4/letter/d/ed8c4c/32.png) [@d.coder](https://forum.shopware.com/u/d.coder)\
**Post date:** [24. November 2016 um 15:29 UTC](https://forum.shopware.com/t/zusatzliche-externe-datenbankverbindung/41695/2 "2016-11-24T15:29:13Z")

</div>

Aus einem alten Shopware 4 Projekt, vielleicht hilft’s:

&nbsp;

```
$config = new \Doctrine\DBAL\Configuration();
        
$connectionParams = array(
     'dbname' => 'xx',
     'user' => 'xx',
     'password' => 'xx',
     'host' => 'xx.xx.xx.xx',
     'port' => '3306',
     'driver' => 'pdo_mysql'
);
        
$conn = \Doctrine\DBAL\DriverManager::getConnection($connectionParams, $config);

```

&nbsp;

---

<div class="post-metadata">

**Author:** ![AlexGalax](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/alexgalax/32/9925_2.png) [@AlexGalax](https://forum.shopware.com/u/AlexGalax)\
**Post date:** [24. November 2016 um 22:05 UTC](https://forum.shopware.com/t/zusatzliche-externe-datenbankverbindung/41695/3 "2016-11-24T22:05:03Z")

</div>

super, funktioniert!
