-
Здравствуйте. Подскажите, пожалуйста, можно ли соединяться с удалённой базой данных (Windows-приложение или web-forma + БД стороннего сервера), причём web-сервисы не предоставляются? Может это можно сделать через сокеты? И если можно- небольшой примерчик, пожалуйста! База данных- MS SQL Server. Delphi 2005. Заранее спасибо!
-
> Может это можно сделать через сокеты?
Через Интернет? Можно, если соответствующий порт открыт для доступа извне (что далеко не факт). Но скорость работы будет удручающей
-
DrPass © (10.12.05 13:56) [1] Скорость работы может быть и выше, если локалка не будет торможить.
-
Да, через интернет. Доступ к базе будет открыт.
-
Julia (10.12.05 15:56) [3] Тогда никакой разницы в подключении по сравнению с подключением через локальную сетю. Просто указывается другой ИП или имя сервера. Но обычно редко делают прямой доступ через Интернет.
-
Я вообще-то хотела услышать про Remoting и .net. А там уже другая реализация. Расскажите про это, пожалуйста!
-
-
Удалено модератором
-
Julia (10.12.05 17:17) [5] Может стоит переместить в конференцию .NET?
-
Да что-то в .net не особо отвечают
-
Вопрос очень специфический к .NET, посмотрим, что там скажут
-
Да я уже здесь тему одну открыла! С точно таким же названием!
-
Ничего тут не отвечают!!!
-
.Net remoting тема слишком обширная.
-
Применительно к базам данных. SQL Server лучше всего.
-
Просто вы странный вопрос задаете. "соединяться с базой данных" скорее всего означает открытие SqlConnection с сервером? Для этого используются разные протоколы - tcp ip, named pipes и проч. Никаких помех кроме как вменяемого сетевого администратора для того, что бы присоединиться так к "удаленной" (вы наверное имеете ввиду через интернет - видите, опять приходится гадать) нет - tcp пакетам это не важно. Если администратор вменяемый, используется VPN. При чем тут remoting непонятно. Может вы опишите задачу как она есть, без попытки использовать непонятные термины?
-
Насколько я понял, у меня схожая задача. Есть приложение, работающее с SQLServeroм через ADO. Необходимо, распространить это приложение не только внутри локальной сети, но и организовать возможность работы, подключаясь к серверу из интернет. По какому порту необходимо подключиться и как это проще всего осуществить? Заранее спасибо.
-
-
> Julia (10.12.05 17:17) [5] > Я вообще-то хотела услышать про Remoting и .net. А там уже > другая реализация. Расскажите про это, пожалуйста!
Если создавать самому такую систему, то все возможно. Делается серверная часть (хоть приложением, хоть сервисом), которая взаимодействует с СУБД. И клиентская часть, которая использует методы удаленных объектов, зарегистрированных (активированных) на сервере.
В частности - надо изучить .NET Remoting в части касающейся работы с удаленными объектами (хотя бы).
А вот что значит "сервисы не предоставляются"?..
-
Главное в решении любой задачи не "изобретать велосипед". MSSQL - это промышленный сервер, т.е. уровень его безопасности ничуть не ниже (а в ряде случаев и по выше) других серверных приложений, как домарощенных построеных на сокетах, remoting-е или COM-е, так и готовых типа то-же IIS-а. Так что ничего страшного в опубликованном MSSQL нет, я лично наблюдал атаку на MSSQL2000 - какой-то американец пытался с 2-х сотен адресов, кучей сессий, подобрать пароль к sa, мы всем отделом умилялись над этим несколько часов, потом написали письмо его провайдеру и поставили IP-фильтр на подсеть. Всё это время сиквел вообще не замечал атаки, просто регистрировал поток неудачных логонов. Так что если и делать безопасный доступ - то, разумеется, единственно верное и по надёжности и по быстродействию, решение, как уже говорилось выше - VPN.
P.S. Лучший генератор паролей и не только на sa, это конечно newid() :)
|