Groups keyboard shortcuts have been updated
Dismiss
See shortcuts

Using PostgreSQL instead of sqlite

22 views
Skip to first unread message

Jack

unread,
Mar 31, 2025, 9:42:10 AMMar 31
to OpenWISP
Hi,
I have installed openwisp along with freeradius and by default it is using sqlite database but I want to use PostgreSQL.
Can anyone tell me how to do so and how to link PostgreSQL database with openwisp and freeradius?
Also, is there any way to specify the database(PostgreSQL) that I want to use at the time of openwisp installation?
Regards,
Jack

Oliver Kraitschy

unread,
Mar 31, 2025, 9:48:55 AMMar 31
to open...@googlegroups.com
Hi Jack,

have a look at the variable 'openwisp2_database' in the role variables:

https://openwisp.io/docs/stable/ansible/user/role-variables.html

Greetings,
Oliver
> --
> You received this message because you are subscribed to the Google Groups "OpenWISP" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to openwisp+u...@googlegroups.com.
> To view this discussion, visit https://groups.google.com/d/msgid/openwisp/e324dc55-e129-4237-a5fb-5b0fbdc9aa14n%40googlegroups.com.

Jack

unread,
Apr 1, 2025, 9:48:28 AMApr 1
to OpenWISP
Hi Oliver,
I added following lines in my playbook file:
openwisp2_database:
      engine: django.contrib.gis.db.backends.postgis
      name: "openwisp"
      user: "admin"  
      host: "192.168.1.20"
      password: "admin"
      port: 5432
but when run the playbook file, I get these errors:

TASK [openwisp.openwisp2 : Migrate] *****************************************************************
fatal: [192.168.1.20]: FAILED! => {"changed": false, "cmd": ["./manage.py", "migrate", "--noinput"], "msg": "\n:stderr: Traceback (most recent call last):\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/db/backends/base/base.py\", line 289, in ensure_connection\n    self.connect()\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/utils/asyncio.py\", line 26, in inner\n    return func(*args, **kwargs)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/db/backends/base/base.py\", line 270, in connect\n    self.connection = self.get_new_connection(conn_params)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/contrib/gis/db/backends/postgis/base.py\", line 112, in get_new_connection\n    connection = super().get_new_connection(conn_params)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/utils/asyncio.py\", line 26, in inner\n    return func(*args, **kwargs)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/db/backends/postgresql/base.py\", line 275, in get_new_connection\n    connection = self.Database.connect(**conn_params)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/psycopg2/__init__.py\", line 122, in connect\n    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)\npsycopg2.OperationalError: connection to server at \"192.168.1.20\", port 5432 failed: Connection refused\n\tIs the server running on that host and accepting TCP/IP connections?\n\n\nThe above exception was the direct cause of the following exception:\n\nTraceback (most recent call last):\n  File \"/opt/openwisp2/./manage.py\", line 10, in <module>\n    execute_from_command_line(sys.argv)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/core/management/__init__.py\", line 442, in execute_from_command_line\n    utility.execute()\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/core/management/__init__.py\", line 436, in execute\n    self.fetch_command(subcommand).run_from_argv(self.argv)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/core/management/base.py\", line 412, in run_from_argv\n    self.execute(*args, **cmd_options)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/core/management/base.py\", line 458, in execute\n    output = self.handle(*args, **options)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/core/management/base.py\", line 106, in wrapper\n    res = handle_func(*args, **kwargs)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/core/management/commands/migrate.py\", line 115, in handle\n    connection.prepare_database()\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/contrib/gis/db/backends/postgis/base.py\", line 101, in prepare_database\n    with self.cursor() as cursor:\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/utils/asyncio.py\", line 26, in inner\n    return func(*args, **kwargs)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/db/backends/base/base.py\", line 330, in cursor\n    return self._cursor()\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/db/backends/base/base.py\", line 306, in _cursor\n    self.ensure_connection()\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/utils/asyncio.py\", line 26, in inner\n    return func(*args, **kwargs)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/db/backends/base/base.py\", line 288, in ensure_connection\n    with self.wrap_database_errors:\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/db/utils.py\", line 91, in __exit__\n    raise dj_exc_value.with_traceback(traceback) from exc_value\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/db/backends/base/base.py\", line 289, in ensure_connection\n    self.connect()\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/utils/asyncio.py\", line 26, in inner\n    return func(*args, **kwargs)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/db/backends/base/base.py\", line 270, in connect\n    self.connection = self.get_new_connection(conn_params)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/contrib/gis/db/backends/postgis/base.py\", line 112, in get_new_connection\n    connection = super().get_new_connection(conn_params)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/utils/asyncio.py\", line 26, in inner\n    return func(*args, **kwargs)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/django/db/backends/postgresql/base.py\", line 275, in get_new_connection\n    connection = self.Database.connect(**conn_params)\n  File \"/opt/openwisp2/env/lib/python3.10/site-packages/psycopg2/__init__.py\", line 122, in connect\n    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)\ndjango.db.utils.OperationalError: connection to server at \"192.168.1.20\", port 5432 failed: Connection refused\n\tIs the server running on that host and accepting TCP/IP connections?\n\n", "path": "/opt/openwisp2/env/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin", "syspath": ["/tmp/ansible_django_manage_payload_2clf00hl/ansible_django_manage_payload.zip", "/usr/lib/python310.zip", "/usr/lib/python3.10", "/usr/lib/python3.10/lib-dynload", "/usr/local/lib/python3.10/dist-packages", "/usr/lib/python3/dist-packages"]}

can you hep me out?
Greetings,
Jack

Oliver Kraitschy

unread,
Apr 1, 2025, 10:01:44 AMApr 1
to open...@googlegroups.com

Hi Jack,

are you sure that a database is running and accepting connections on that
host ip and port?

Greetings,
Oliver
> To view this discussion, visit https://groups.google.com/d/msgid/openwisp/40852f8e-9abe-4a4c-8c21-0532e27be17dn%40googlegroups.com.

Reply all
Reply to author
Forward
0 new messages