98 / 10 / 0
Регистрация: 21.02.2011
Сообщений: 430
|
|
1 | |
Соединение с БД SQL локальная сеть14.10.2015, 01:40. Показов 2540. Ответов 16
Метки нет (Все метки)
Приветствую товарищи!
Вообщем то все понятно с локальным подключением к БД. Используя ADOConnection, нарисовать клацая мышкой Connection string, вбив логин и пароль не вопрос. Тем не менее что-то оно не хочет так просто работать в локальной сети. Не коннектится к БД ивсе тут. Причем в выпадающем списке имя сервера доступно, при создании Connection String. Разумеется сервер пингуется. Поначалу приложение ругалось на несуществующий провайдер - Native SQL Client 11.x. Локальльно он есть, на удаленной машине его нет. И как туда его запихать я не знаю. На обеих машинах я поставил Embarcadero XE8, для осуществления попыток. На машине с установленным сервером SQL Провайдер SQL Native Client есть - на второй нет. Может в этом причина? Тем не менее, Зашел в SQL Management Studio посмотрел список доступных клиентов - нашел одного имеющегося так же и на удаленной машине - это Microsoft OLE provider for SQL. Попытка соединиться с его помощью - FAIL. Сервер не существует или аутентификация провалилась (Только по-английски). Как решить проблему? Как заставить приложение подключаться к БД с любой машины в локальной сети?
0
|
14.10.2015, 01:40 | |
Ответы с готовыми решениями:
16
Беспроводное соединение (WI-FI) и локальная сеть (Корпоративная) Windows 8: когда делаю VPN соединение общим пропадает локальная сеть Настроить сеть на Windows 10 по схеме: USB модем - компьютер - роутер - локальная сеть Интернет + сеть головного = моя локальная сеть |
2082 / 1573 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|
14.10.2015, 03:33 | 2 |
В настройке подключения по кнопке Test коннектится?
0
|
98 / 10 / 0
Регистрация: 21.02.2011
Сообщений: 430
|
|
14.10.2015, 17:59 [ТС] | 3 |
0
|
2082 / 1573 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|
14.10.2015, 18:51 | 4 |
Капайте ODBC драйвера. Проблема в них а не в вашем коде или компонентах билдера. При попытке тестирования коннекции из панели управления будет тоже самое.
0
|
98 / 10 / 0
Регистрация: 21.02.2011
Сообщений: 430
|
|
15.10.2015, 19:36 [ТС] | 5 |
Итак. Драйвер ODBC переустановил на удаленной машине.
Не помогло. Может делаю что-то не так? Действия: 1. Поставил туда Embarcadero, открыл проект там. 2. Задаю Connection string для ADOConnection 3. Замечаю что список возможных провайдеров отличается от списка провайдеров на машине с установленным SQL сервером 4. Вместо Native Client 11 выбираю OLE DB Provider for SQL Server. Ничего лучше не вижу. 5. Следующая вкладка из выпадающего списка беру имя своего сервера - оно там есть. 6. Вбиваю логин/пароль к БД. 7. Select database on srver. Клац чтобы выпадающий список увидать и... ждем... 10 секунд... Окно с заголовком Во-первых сервер еще как Экзист, а во-вторых с хрена ли Акцесс денайд если логин и пароль верны и это аж самые навороченный юзер. Как sa прямо. В чем проблема может быть? Можно ли как-то добавить в список на удаленной машине Native Client?
0
|
2082 / 1573 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|
15.10.2015, 19:43 | 6 |
Та тебе там не билдер надо в первую очередь ставить а клиент доступа к серверу. из панели управления коннекция точно так же тестится. вообще суть ADO/ODBC - создание коннекций и источников данных на основе ( с учетом о)учетных записей пользователей винды, и предоставление доступа к этим источникам прикладным прогам (на любой платформе). Т.е добится надо чтоб коннектилось и вообще без билдера, это технология оси, билдер только к уже созданному в оси источнику данных подключается.
Добавлено через 33 секунды Должен быть в комплекте SQL сервера к которому пытаешься приконнектится
0
|
98 / 10 / 0
Регистрация: 21.02.2011
Сообщений: 430
|
|
15.10.2015, 22:55 [ТС] | 7 |
Скачал все эти куски с помощью которых можно приконнектиться. Все эти клиенты... Осталось правильно определить какой из файлов установщиков тот что надо. Скачал с MSDN вот тут http://www.microsoft.com/en-us... x?id=11988 Правда у меня SQL "14, но думаю разницы не будет - клиенты те же
Добавлено через 1 час 9 минут Или вот на 14 нашел http://www.microsoft.com/en-in... x?id=42295
0
|
2082 / 1573 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|
16.10.2015, 17:09 | 8 |
Microsoft® ODBC Driver 11 for Microsoft SQL Server® - Windows - вот это собственно говоря и есть ODBC драйвер, который надо установить на клиенте
0
|
98 / 10 / 0
Регистрация: 21.02.2011
Сообщений: 430
|
|
16.10.2015, 20:10 [ТС] | 9 |
Эффект равен нулю от этого.
Добавлено через 24 минуты Зато нашел установщик sqlncli - это как раз тот самый клиент 11. И он, таки у меня есть теперь в списке возможных клиентов на удаленной машине. Половина дела есть. Теперь дальше. Нет соединения так как: SQL Server Native Client Data Link Error. Появляется секунд через 30 после попытки выбрать имя базы на сервере. Содержание не буду цитировать. Смысл такой: Подключение провалено. Проверьте имя и пароль (проверено) и убедитесь что ваш сервер может принимать удаленные подключения. Где это проверить куда лезть? SQL 2014. Добавлено через 44 минуты Нашел эту галочку "Allow remote connections to this server" Она и так есть.
0
|
2082 / 1573 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|
16.10.2015, 22:01 | 10 |
Попробуй через Telnet ему на порт постучаться. Может он то и ждет с удаленных машин коннекта а винда их отсекает. Там кстати забыли сказать проверить IP сервера.
Не по теме: Ну да. драйвера установлены, прога к датасорсу подключится уже может. Остальное по большому счету заботы сетевого администратора. Добавлено через 3 минуты Да еще. в SQL есть ли юзер с правами доступа с этого хоста? У нее разделение прав идет не только по паре логин/пароль, а по тройке логин хост пароль.
0
|
98 / 10 / 0
Регистрация: 21.02.2011
Сообщений: 430
|
|
17.10.2015, 01:35 [ТС] | 11 |
0
|
2082 / 1573 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|
17.10.2015, 02:00 | 12 |
Причем права выставляются не на доступ вообще, а на доступ к конкретному объекту, начиная от базы и заканчивая конкретной колонкой в конкретной таблице. У root обычно по умолчанию доступ localhost, вполне возможно что для root вообще только localhost. Точнее не скажу, т.к. MS SQL не пользовался, цеплялся через ADO только к MySQL
0
|
98 / 10 / 0
Регистрация: 21.02.2011
Сообщений: 430
|
|
20.10.2015, 20:51 [ТС] | 13 |
Хм. А где искать то то эти параметры прав доступа.
Ну ясно что Microsoft SQl management Studio. Там разворачивающиеся списки - Security - Logins - Тот Юзер которого завел. А дальше где копать?
0
|
2082 / 1573 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|
20.10.2015, 21:59 | 14 |
напиши в консоли сервера запрос
SHOW GRANTS; покажет все текущие привелегии. Добавление привелегий осуществляется оператором SQL GRANT Синтаксис для конкретного сервера в мануале по нему. Добавлено через 2 минуты Во всяком случае для MySQL только так и делалось, и это должен поддерживать любой SQL сервер, причем примерно одинаково (с разницей до расширений). А возможность редактирования всего этого визуальными утилитами у каждого своя так же как и наличие таких возможностей.
0
|
98 / 10 / 0
Регистрация: 21.02.2011
Сообщений: 430
|
|
30.10.2015, 01:23 [ТС] | 15 |
Вообщем так получается. На обоих компьютерах установлен одинаковый набор ПО. SQL присутствует. SQL Server Management Studio тоже. К локальным БД Manager Studio цепляется на раз. Но если перед подключением выбрать иной сервер - он виден в выпадающем меню, (то есть найти его система в состоянии в локальной сети) то подключение не будет возможно. Выбираю правильную пару Логин/пароль и фиг вам.
Окно: Connect to Server. Содержание: Cannot connect to Workstation (например) Additional information A network related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found (Ага, как же я ж его выбрал из выпадающего меню. Занчит таки найден.) or not accessible (Вот почему это?) Трум пум пум Provider: Named Pipes Provider, error 40 - Could not open connection to SQL server. Microsoft SQL server Error - 5. Access Denied. Вот что не так с доступом. Почему он невозможен?
0
|
349 / 262 / 65
Регистрация: 07.04.2014
Сообщений: 1,603
|
|
30.10.2015, 01:47 | 16 |
На всякий случай стоит проверить настройки файрвола на машинах. Возможно не открыты нужные порты.
0
|
98 / 10 / 0
Регистрация: 21.02.2011
Сообщений: 430
|
|
30.10.2015, 23:29 [ТС] | 17 |
Вырубил файерволл вообще. Помогло. Спасибо за совет.
0
|
30.10.2015, 23:29 | |
30.10.2015, 23:29 | |
Помогаю со студенческими работами здесь
17
Локальная сеть и сеть интернет , как соединить их ? чтоб интернет попал в локалку? Соединение с БД (соединение через сеть) Локальная сеть Сеть локальная Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |