Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Gekommen
Member

Откуда: Краснодар
Сообщений: 33
Добрый день.

На компьютерах в сети есть локальные базы Access (32 бита), куда при отключении интернета пишутся данные и есть общая бд MSSQL SERVER 2012 R2 (64 бита) , в которой все работают при нормальных условиях.

Есть задача перекидывать из резервных баз Access все данные, которых еще нет в общей базе.

Вот у меня вопрос, как лучше реализовать эту технологию? Создать связанный сервер в MSSQL с Access'ом (Создаю на сервере файл 64-ех битный файл .accdb в котором делаю связанные таблицы с базой .mdb на другом компе, но связанный сервер не видит этих связанных таблиц)? Либо в файлах mdb подцепить таблицы MSSQL и процедурой писать данные туда?

Мне кажется, что правильно сделать по первому варианту, но у меня не получается. Или возможно эту задачу можно решить совсем по-другому и более правильно.

Буду благодарен за любую помощь!
26 ноя 15, 15:06    [18476288]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Glory
Member

Откуда:
Сообщений: 104751
Gekommen
Или возможно эту задачу можно решить совсем по-другому и более правильно.

Да.
В оффисах вместо "локальных баз Access" ставите везде MSSQL.
И организуете репликацию слиянием с центральным сервером.
26 ноя 15, 15:15    [18476348]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
seec
Member

Откуда: дальнее замкадье
Сообщений: 80
Gekommen,
DTS пакет, как вариант...
26 ноя 15, 15:16    [18476353]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Gekommen
Member

Откуда: Краснодар
Сообщений: 33
Glory, получается для каждого филиала нужно будет покупать свой SQL Server?
26 ноя 15, 15:21    [18476382]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
seec
Member

Откуда: дальнее замкадье
Сообщений: 80
Gekommen,
MSDE = халявы
26 ноя 15, 15:22    [18476394]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
invm
Member

Откуда: Москва
Сообщений: 9827
Gekommen
Glory, получается для каждого филиала нужно будет покупать свой SQL Server?
Есть бесплатная Express-редакция, которая может быть подписчиком в репликации.
26 ноя 15, 15:23    [18476396]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Glory
Member

Откуда:
Сообщений: 104751
Gekommen
Glory, получается для каждого филиала нужно будет покупать свой SQL Server?

А Access вам бесплатно по наследству достался что ли ?
26 ноя 15, 15:24    [18476408]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Gekommen
Member

Откуда: Краснодар
Сообщений: 33
seec
Gekommen,
DTS пакет, как вариант...

Спасибо большое, сейчас прочитаю что это такое
26 ноя 15, 15:30    [18476449]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Gekommen
Member

Откуда: Краснодар
Сообщений: 33
Glory
А Access вам бесплатно по наследству достался что ли ?

По сути да. На данный момент в филиалах работают на акссессовских базах, так что все уже куплено.
26 ноя 15, 15:31    [18476458]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Gekommen
Member

Откуда: Краснодар
Сообщений: 33
А почему связанный сервер не видит связанных таблиц в Акссессе?

Если создать две бд Акссесс локально на том же компе, где и MSSQL и в БД2 сделать связанные таблицы к БД1, то MSSQL все видит, а вот если БД1 на другом компе, то связанные таблицы уже не видит, почему так происходит?
26 ноя 15, 16:16    [18476803]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Glory
Member

Откуда:
Сообщений: 104751
Gekommen
А почему связанный сервер не видит связанных таблиц в Акссессе?

Наверное потому, что это не таблицы Аксесса
26 ноя 15, 16:19    [18476828]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Gekommen
Member

Откуда: Краснодар
Сообщений: 33
Glory
Gekommen
А почему связанный сервер не видит связанных таблиц в Акссессе?

Наверное потому, что это не таблицы Аксесса


Но тогда почему, если бд К КОТОРОЙ идет связь находится на этом же компе, тогда все работает? (не работает только, если обращается по сети)
26 ноя 15, 16:21    [18476852]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Glory
Member

Откуда:
Сообщений: 104751
Gekommen
Но тогда почему, если бд К КОТОРОЙ идет связь находится на этом же компе, тогда все работает?

Может вы уже приведете свой код, который то работает, то не работает ?
26 ноя 15, 16:26    [18476887]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Gekommen
Member

Откуда: Краснодар
Сообщений: 33
Допустим хочу сделать обычную выборку

SELECT * FROM [CONNECT]...[Экспорт-Торговля за день]


В ответ приходит такая ошибка

Поставщик OLE DB "Microsoft.ACE.OLEDB.12.0" для связанного сервера "CONNECT" вернул сообщение "Ядро СУБД Microsoft Access более не может открыть файл "\\192.168.0.77\c\База\Экспорт.mdb" или записать в него данные.  Файл уже открыт другим пользователем для монопольного доступа, либо требуется разрешение на просмотр и запись данных.".
Сообщение 7311, уровень 16, состояние 2, строка 1
Не удалось получить набор строк схемы "DBSCHEMA_COLUMNS" поставщика OLE DB "Microsoft.ACE.OLEDB.12.0" для связанного сервера "CONNECT". Поставщик поддерживает интерфейс, но возвращает код ошибки при его использовании.
26 ноя 15, 16:34    [18476972]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Glory
Member

Откуда:
Сообщений: 104751
"Файл уже открыт другим пользователем для монопольного доступа, либо требуется разрешение на просмотр и запись данных."
Вы это читали ?
26 ноя 15, 16:36    [18476994]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Gekommen
Member

Откуда: Краснодар
Сообщений: 33
Glory
"Файл уже открыт другим пользователем для монопольного доступа, либо требуется разрешение на просмотр и запись данных."
Вы это читали ?


Читал... Но он не открыт никем.

Проблема в разрешении на просмотр и запись? Как можно разрешить это? Подскажите, пожалуйста.
26 ноя 15, 16:39    [18477015]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Glory
Member

Откуда:
Сообщений: 104751
Gekommen
Проблема в разрешении на просмотр и запись?

А у вас в сети все всем разрешено автоматически ?
Мне вот тоже можно ?

Gekommen
Как можно разрешить это?

Для начала узнать, от кого идет обращение
26 ноя 15, 16:42    [18477042]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Gekommen
Member

Откуда: Краснодар
Сообщений: 33
Glory,

Пользователь MSSQL - sa

Служба SQL SERVER запускается под учетной записью "Сетевая служба"

Вы это имели ввиду? Я правильно понял вопрос? Если да, то что дальше?
26 ноя 15, 16:51    [18477098]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Glory
Member

Откуда:
Сообщений: 104751
Gekommen
Вы это имели ввиду? Я правильно понял вопрос? Если да, то что дальше?

Я имел ввиду, кто обращается к файлу \\192.168.0.77\c\База\Экспорт.mdb
26 ноя 15, 16:54    [18477118]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Gekommen
Member

Откуда: Краснодар
Сообщений: 33
Glory
Gekommen
Вы это имели ввиду? Я правильно понял вопрос? Если да, то что дальше?

Я имел ввиду, кто обращается к файлу \\192.168.0.77\c\База\Экспорт.mdb


Не знаю... Как это можно узнать?

Я просто открыл Management Studio и написал этот запрос.

Или Вы имеете ввиду под какой учетной записью я захожу?
26 ноя 15, 16:58    [18477147]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Gekommen
Member

Откуда: Краснодар
Сообщений: 33
Glory
Я имел ввиду, кто обращается к файлу \\192.168.0.77\c\База\Экспорт.mdb

Подскажите, пожалуйста, как я могу узнать, кто обращается к файлу? (вчера так и не смог разобраться с этим)
27 ноя 15, 11:40    [18480518]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Glory
Member

Откуда:
Сообщений: 104751
Gekommen
Подскажите, пожалуйста, как я могу узнать, кто обращается к файлу? (вчера так и не смог разобраться с этим)

Использовать windows audit
27 ноя 15, 11:55    [18480648]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Gekommen
Member

Откуда: Краснодар
Сообщений: 33
Glory, настроил аудит для папки, где находится Access база, потом снова выполнил запрос в MSSERVER'е и вот что получилось в журнале безопасности:


Тип события:	Аудит успехов
Источник события: Security
Категория события: Вход/выход
Код события: 538
Дата: 27.11.2015
Время: 12:55:37
Пользователь: NT AUTHORITY\АНОНИМНЫЙ ВХОД
Компьютер: ACCESS
Описание:
Выход пользователя из системы:
Пользователь: АНОНИМНЫЙ ВХОД
Домен: NT AUTHORITY
Код входа: (0x0,0xB3AB6)
Тип входа: 3


Причем, я потом просто с сервера зашел в папку с базой и журнал уже выдал вход, через пользователя: NT AUTHORITY\SYSTEM

Я так понимаю, надо сделать так, чтобы и MSSQL заходил под каким-то пользователем (а не анонимно)?

К сообщению приложен файл. Размер - 35Kb
27 ноя 15, 13:12    [18481165]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
Gekommen
Member

Откуда: Краснодар
Сообщений: 33
Попробовал на локальном компьютере, где база Access разрешить чтение и изменение файлов при анонимном входе, но не получилось.

Потом нашел в свойствах связанного сервера пункт: безопасность.

Там слева в "локальное имя входа" выбрал: NT Service\MSSQLSERVER , а справа "user" - это пользователь на компе где Акссесс

И ниже ставлю галку: Устанавливать с использованием текущего контекста безопасности.

Но, когда нажимаю ОК, выскакивает такая же ошибка, что база уже открыта другим пользователем.

Что я делаю не так? Как сделать, чтобы заработало?
27 ноя 15, 16:23    [18482496]     Ответить | Цитировать Сообщить модератору
 Re: Соединение MS SQL с несколькими БД Access расположенных на других компьютерах  [new]
seec
Member

Откуда: дальнее замкадье
Сообщений: 80
учётная запись "гость" активна?
27 ноя 15, 21:11    [18483734]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить