title: Django multiple databases, does Django connect to all of them initially?
body: <p>Sample database configuration for MySQL :</p>
  
  <pre><code>DATABASES = {
      'auth_db': {
          'NAME': 'auth_db',
          'ENGINE': 'django.db.backends.mysql',
          'USER': 'mysql_user',
          'PASSWORD': 'swordfish',
      },
      'master': {
          'NAME': 'master',
          'ENGINE': 'django.db.backends.mysql',
          'USER': 'mysql_user',
          'PASSWORD': 'spam',
      },
      'slave1': {
          'NAME': 'slave1',
          'ENGINE': 'django.db.backends.mysql',
          'USER': 'mysql_user',
          'PASSWORD': 'eggs',
      },
      'slave2': {
          'NAME': 'slave2',
          'ENGINE': 'django.db.backends.mysql',
          'USER': 'mysql_user',
          'PASSWORD': 'bacon',
      },
  }
  </code></pre>
  
  <p>Does Django connect to all of them initially, even if some of the databases are not used at all ?
  eg.</p>
  
  <p>Using raw cursors with multiple databases</p>
  
  <blockquote>
    <p>If you are using more than one database you can use
    django.db.connections to obtain the connection (and cursor) for a
    specific database. django.db.connections is a dictionary-like object
    that allows you to retrieve a specific connection using its alias:</p>
    
    <p>from django.db import connections </p>
    
    <p>cursor =  connections['my_db_alias'].cursor()</p>
  </blockquote>
  
  <p>So here,
   1.  the connections object contains already made connections ? Or does it connect when a request for cursor is made ?
   2. Is there a way to change this default behaviour and have the connections made on demand, ( All of the querying is as raw querying, and all databases are MySQL )   ?</p>