Не могу подключится к субд postgres
Всплывает ошибка:
utf-8' codec can't decode byte 0xc2 in position 55: invalid continuation byte
Не понимаю вообще что это значит,
вроде бы не использовал какие-то особые символы.
Сама БД находится в локальной сети на линуксе.
import psycopg2
from config import host, user, password, db_name
connection = None
try:
connection = psycopg2.connect(
host=host,
user=user,
password=password,
database=db_name
)
with connection.cursor() as cursor:
cursor.execute(
"SELECT version()"
)
print(f"Server version: {cursor.fetchone()}")
except Exception as _ex:
print(f"[DATABASE] Произошла ошибка при подлючении к бд {_ex}")
finally:
if connection:
connection.close()
print("[DATABASE] Соединение с бд закрыто")
Ответы (1 шт):
Автор решения: AnnaBazueva
→ Ссылка
Первое, проверьте кодировку БД через командную строку:
psql -h host -U user -d db_name -c "SELECT pg_encoding_to_char(encoding) FROM pg_database WHERE datname = 'db_name';"
Второе, попробуйте задать кодировку при подключении:
connection = psycopg2.connect(
host=host,
user=user,
password=password,
database=db_name,
options="-c client_encoding=utf8"
)