 <p>I found out that it is indeed possible to be connected to different databases in the same Symfony Bundle. This answer led me to a possible solution: <a href="http://stackoverflow.com/a/15110867/2174832">http://stackoverflow.com/a/15110867/2174832</a></p> <pre><code>#services.yml acme_app.dynamic_connection: class: %acme.dynamic_doctrine_connection.class% calls: - [setDoctrineConnection, @doctrine.dbal.default_connection]] &lt;?php namespace Acme\Bundle\AppBundle; use Doctrine\DBAL\Connection; use Symfony\Component\HttpKernel\Exception\ServiceUnavailableHttpException; use Exception; class DynamicDoctrineConnection { /** * @var Connection */ private $connection; /** * Sets the DB Name prefix to use when selecting the database to connect to * * @param Connection $connection * @return SiteDbConnection $this */ public function setDoctrineConnection(Connection $connection) { $this-&gt;connection = $connection; return $this; } public function setUpAppConnection() { if ($this-&gt;request-&gt;attributes-&gt;has('appId')) { $connection = $this-&gt;connection; $params = $this-&gt;connection-&gt;getParams(); // we also check if the current connection needs to be closed based on various things // have left that part in for information here // $appId changed from that in the connection? // if ($connection-&gt;isConnected()) { // $connection-&gt;close(); // } // Set default DB connection using appId //$params['host'] = $someHost; $params['dbname'] = 'Acme_App'.$this-&gt;request-&gt;attributes-&gt;get('appId'); // Set up the parameters for the parent $connection-&gt;__construct( $params, $connection-&gt;getDriver(), $connection-&gt;getConfiguration(), $connection-&gt;getEventManager() ); try { $connection-&gt;connect(); } catch (Exception $e) { // log and handle exception } } return $this; } } </code></pre> <p>With the solution above one can write a service that can be called to change the database that the current entity manager is connected to to a different database. </p> <p>Unfortunately the <strong>solution above only works for the PDO driver (Mysql).</strong> Since our technology stack includes mongodb and we use the <strong>doctrine-mongodb bundle</strong> I had to look for a <strong>differnt solution</strong>. </p> <p>The doctrine-mongodb documentation has a section about setting up a custom document manager here: <a href="http://docs.doctrine-project.org/projects/doctrine-mongodb-odm/en/latest/reference/introduction.html" rel="nofollow">http://docs.doctrine-project.org/projects/doctrine-mongodb-odm/en/latest/reference/introduction.html</a></p> <p>I was unable to get the right doctrine-mongodb odm document mappings to work with the instructions in the doc and therefore the only solution for me was to create a simple PHP mongoclient connection: </p> <pre><code>$mongo = new \Mongo('mongodb://localhost:27017'); $legacyDbDocumentMangager = $mongo-&gt;selectDB('backed_up_prod_db'); $legacyUserCollection = $legacyDbDocumentMangager-&gt;selectCollection('User'); $user = $legacyUserCollection-&gt;findOne(array('email' =&gt; 'matyas@stackoverflow.com')); </code></pre> <p>The only differnce between this simple php mongodb driver and the doctrine-mongodb odm is that the results of the queries of this driver are associative arrays and the results of the doctrine-mongodb odm diver are objects. </p> <p>I hope this information is useful to someone. </p>