For AI agents: the complete documentation index is available at https://docs.us.ovhcloud.com/en/llms.txt, the full documentation bundle is available at https://docs.us.ovhcloud.com/en/llms-full.txt, and this page is available as Markdown at https://docs.us.ovhcloud.com/en/public-cloud/databases/postgresql-connect-python.md.
  • English

PostgreSQL® - Connect with Python

View as Markdown

Learn how to connect to a PostgreSQL® database instance with one of the world's most famous programming languages: Python.

Cloud Databases allow you to focus on building and deploying cloud applications while OVHcloud takes care of the database infrastructure and maintenance in operational conditions.

You can find an example in the GitHub examples repository.

 

Requirements

 

Concept

A PostgreSQL® instance can be managed in multiple ways. One of the easiest, yet powerful, is to use a Command Line Interface (CLI), as shown in our guide: Connect to PostgreSQL® with CLI.

Another way is to interact directly using a programming language, such as Python. Python is one of the major programming languages in the world, especially in the Data ecosystem.

To do this, we will need to set up our Python environment with PostgreSQL® drivers, configure our Public Cloud Databases for PostgreSQL® instances to accept incoming connections, and code in Python to perform a few example actions.

 

Instructions

Set up your Python environment

To interact with your PostgreSQL® instance using Python, your development environment needs to be configured with:

  • A compatible version of Python
  • Psycopg2

Please follow the official Psycopg - PostgreSQL® database adapter for Python to get the latest information.

Once your Python environment is set up and you begin executing a python --version in your command line interface (CLI), you should see information about the version as shown below:

python3 --version
Python 3.13.5

In the same console, by typing a pip list check if psycopg2 is correctly installed:

laptop$  pip list| grep psycopg2
psycopg2               2.9.10

We are now ready to learn how to connect to our PostgreSQL® instance!

 

Connect with Python

Using psycopg2

Psycopg is the most popular PostgreSQL® database adapter for the Python programming language.

In your Python environment, let's try a connection:

import psycopg2

connection = psycopg2.connect(dbname='defaultdb', user='<avnadmin>', password='<Nl2xxxxxxxxxxxYvC>', host='postgresql-xxxxxxxx-yyyyyyyy.database.cloud.ovh.us', port='20235', sslmode='require')

pid = connection.get_backend_pid()
cursor = connection.cursor()
cursor.execute("select * from pg_stat_ssl where ssl = True")
stat_ssl = cursor.fetchone()

After executing your Python code, the result shown in the CLI should be like this:

[(2604173, True, 'TLSv1.3', 'TLS_AES_256_GCM_SHA384', 256, None, None, None)]

 

Go further

Browse all the Databases guides.

Browse the rest of the OVHcloud US documentation for guides on our other products and services.

Learn more about Managed Databases on the OVHcloud US website.

OVHcloud Managed Databases and Analytics:

  • Grafana® is a registered trademark of Grafana Labs and is used with the permission of Grafana Labs. OVH SAS and its subsidiaries are not affiliated with or endorsed by Grafana Labs.
  • Kafka® is a registered trademark of The Apache Software Foundation and has been licensed for use by OVHcloud, who has no affiliation with and is not endorsed by The Apache Software Foundation.
  • MongoDB® is a registered trademark of MongoDB, Inc.
  • MySQL® is a registered trademark of Oracle and/or its affiliates.
  • PostgreSQL® is a registered trademark of the PostgreSQL Community Association of Canada.