Мне нужно подключиться к базе данных удаленно, то есть я использую свой компьютер и подключаюсь к компьютеру (используя подключение к удаленному рабочему столу). Затем я пытаюсь подключиться к базе данных psql, которая находится на другом сервере. Я могу подключиться к нему через Terminal (он работает), но я должен использовать его в своем сценарии C#. Я читал, что должен использовать Npgsql.dll (я загрузил Npgsql-2.2.3-net35). Для подключения к базе данных я писал:Npgsql conn.Open() не работает
string connstring = "Host=xxx.xx.xxx.xxx;Port=5432;Database=yy;"
+ "User=zz;Password=xxxxxx;CommandTimeout=20;Ssl=true;";
NpgsqlConnection conn = new NpgsqlConnection (connstring);
if (conn != null && conn.State == ConnectionState.Closed)
{
Console.WriteLine ("Connection closed");
}
else
{
Console.WriteLine ("Connection opened");
};
conn.Open();
if (conn != null && conn.State == ConnectionState.Closed)
{
Console.WriteLine ("Connection closed");
}
else
{
Console.WriteLine ("Connection opened");
};
Когда я пытаюсь запустить мой сценарий, он не работает. Я не получаю никакой ошибки, но ничего после conn.Open() не возвращается. Я думаю, что это может быть вопрос о строке соединения, потому что когда я удаляю Ssl = true, я получаю FATAL: 28000: нет pg_hba.conf для хоста (здесь IP-адрес моего удаленного компьютера), пользовательский «zz», yy ", SSL выключен.
Является ли кто-нибудь, кто мог бы помочь мне решить мою проблему?
Вы настроили приложение postgres для приема соединений с вашего IP-адреса? – Rob
попробуйте использовать Visual Studios Server Explorer для подключения, то это предоставит вам строку подключения, к которой она была подключена, возможно, у вас просто неправильная строка соединения –
@Rob Я не управляю этой базой данных (у меня нет прямой доступ к нему), но я могу подключиться к нему через Terminal. У меня есть аналогичная ошибка в Terminal before (FATAL: нет записи pg_hba.conf для хоста (здесь IP моего удаленного компьютера), пользователя «zz», базы данных «yy», SSL на FATAL: нет записи pg_hba.conf для хост (здесь IP моего удаленного компьютера), пользователь «zz», база данных «yy», отключена SSL и мастер сервера, добавлена запись в pg_hba, и теперь она работает. Но мой скрипт не работает. – natalia