title: Django oracle db settings
body: <p>I just want to connect my local oracle db with my django project but my database credential is not working. Actually, I'm able to connect my oracle database via sql developer with that credential:
  <a href="https://i.stack.imgur.com/cHttZ.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/cHttZ.png" alt="enter image description here"></a></p>
  
  <p>I just used that credential in django settings_py like that</p>
  
  <pre><code>DATABASES = {
      'default': {
          'ENGINE': 'django.db.backends.oracle',
          'NAME': 'INTERNAL',
          'USER': 'system',
          'PASSWORD': 'oracle',        
          'HOST':'localhost/xe',
          'PORT':'1521'
      }
  }
  </code></pre>
  
  <p>and error is:</p>
  
  <pre><code>Traceback (most recent call last):
  web_1  |   File "manage.py", line 22, in &lt;module&gt;
  web_1  |     execute_from_command_line(sys.argv)
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/core/management/__init__.py", line 364, in execute_from_command_line
  web_1  |     utility.execute()
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/core/management/__init__.py", line 356, in execute
  web_1  |     self.fetch_command(subcommand).run_from_argv(self.argv)
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/core/management/base.py", line 283, in run_from_argv
  web_1  |     self.execute(*args, **cmd_options)
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/core/management/base.py", line 330, in execute
  web_1  |     output = self.handle(*args, **options)
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/core/management/commands/makemigrations.py", line 110, in handle
  web_1  |     loader.check_consistent_history(connection)
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/db/migrations/loader.py", line 282, in check_consistent_history
  web_1  |     applied = recorder.applied_migrations()
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/db/migrations/recorder.py", line 65, in applied_migrations
  web_1  |     self.ensure_schema()
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/db/migrations/recorder.py", line 52, in ensure_schema
  web_1  |     if self.Migration._meta.db_table in self.connection.introspection.table_names(self.connection.cursor()):
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/db/backends/base/base.py", line 254, in cursor
  web_1  |     return self._cursor()
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/db/backends/base/base.py", line 229, in _cursor
  web_1  |     self.ensure_connection()
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/db/backends/base/base.py", line 213, in ensure_connection
  web_1  |     self.connect()
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/db/utils.py", line 94, in __exit__
  web_1  |     six.reraise(dj_exc_type, dj_exc_value, traceback)
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/utils/six.py", line 685, in reraise
  web_1  |     raise value.with_traceback(tb)
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/db/backends/base/base.py", line 213, in ensure_connection
  web_1  |     self.connect()
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/db/backends/base/base.py", line 189, in connect
  web_1  |     self.connection = self.get_new_connection(conn_params)
  web_1  |   File "/usr/local/lib/python3.6/site-packages/django/db/backends/oracle/base.py", line 212, in get_new_connection
  web_1  |     return Database.connect(self._connect_string(), **conn_params)
  web_1  | django.db.utils.DatabaseError: ORA-12545: Connect failed because target host or object does not exist
  </code></pre>
  
  <p>here its my listener status</p>
  
  <pre><code> Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
      STATUS of the LISTENER
      ------------------------
      Alias                     LISTENER
      Version                   TNSLSNR for Linux: Version 11.2.0.2.0 - Production
      Start Date                28-DEC-2017 15:51:21
      Uptime                    0 days 2 hr. 8 min. 36 sec
      Trace Level               off
      Security                  ON: Local OS Authentication
      SNMP                      OFF
      Default Service           XE
      Listener Parameter File   /u01/app/oracle/product/11.2.0/xe/network/admin/listener.ora
      Listener Log File         /u01/app/oracle/diag/tnslsnr/e48c7c272f44/listener/alert/log.xml
      Listening Endpoints Summary...
        (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC_FOR_XE)))
        (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=e48c7c272f44)(PORT=1521)))
        (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=e48c7c272f44)(PORT=8080))(Presentation=HTTP)(Session=RAW))
      Services Summary...
      Service "PLSExtProc" has 1 instance(s).
        Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
      Service "XE" has 1 instance(s).
        Instance "XE", status READY, has 1 handler(s) for this service...
      Service "XEXDB" has 1 instance(s).
        Instance "XE", status READY, has 1 handler(s) for this service...
       here its my listener status
  </code></pre>