| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 | .. _broker-sqlalchemy:================== Using SQLAlchemy==================.. _broker-sqlalchemy-installation:Installation============.. _broker-sqlalchemy-configuration:Configuration=============Celery needs to know the location of your database, which should be the usualSQLAlchemy connection string, but with 'sqla+' prepended to it::    BROKER_URL = "sqla+sqlite:///celerydb.sqlite"This transport uses only the :setting:`BROKER_URL` setting, which have to bean SQLAlchemy database URI.Please see `SQLAlchemy: Supported Databases`_ for a table of supported databases.Here's a list of examples using a selection of other `SQLAlchemy Connection String`_'s:.. code-block:: python    # sqlite (filename)    BROKER_URL = "sqla+sqlite:///celerydb.sqlite"    # mysql    BROKER_URL = "sqla+mysql://scott:tiger@localhost/foo"    # postgresql    BROKER_URL = "sqla+postgresql://scott:tiger@localhost/mydatabase"    # oracle    BROKER_URL = "sqla+oracle://scott:tiger@127.0.0.1:1521/sidname".. _`SQLAlchemy: Supported Databases`:    http://www.sqlalchemy.org/docs/core/engines.html#supported-databases.. _`SQLAlchemy Connection String`:    http://www.sqlalchemy.org/docs/core/engines.html#database-urls.. _sqlalchemy-results-configuration:Results-------To store results in the database as well, you should configure the resultbackend.  See :ref:`conf-database-result-backend`... _broker-sqlalchemy-limitations:Limitations===========The SQLAlchemy database transport does not currently support:    * Remote control commands (celeryev, broadcast)    * Events, including the Django Admin monitor.    * Using more than a few workers (can lead to messages being executed      multiple times).
 |