Опять про создание еще одной БД в SQL-сервере

0 голосов
спросил 21 Июнь, 07 от master (380 баллов) в категории Программные продукты Esri
Есть дефаултовая БД sde (arhikub_sde) , хочу создать еще одну БД на этом же SQL-сервере. Создаю в Интерпрайз-менеджере БД с именем data. Делаю все по инструкции, которую нашел от Григория в "старой теме":

Вы хотите чтобы у Вас данные лежали в другой базе данных на этом же SQL-server? Так в чём проблема? В документе же написано.

1. Создаёте новую базу в SQL-manager.

2. Даёте пользователю SDE права в этой базе - Create Table, Create SP. В некоторых случаях можно ещё дать Create View и Create Function.

3. Даёте соответствующие права пользователям. Если эти пользователи будут создавать или редактировать данные, то как минимум - Create Table, Create SP.

4. В ArcCatalog создаёте подключение к SDE, в котором указываете к какой базе подключаетесь. Загружаете данные. И работайте на здоровье. Можете убедиться в SQL-manager куда данные попадают физически.

Перехожу в арк-каталог, создаю новое подключение, указываю имя БД data, имя юзера, пароль (юзеру права дал), но вываливается сообщение: Invalid database name.
Что я неправильно делаю?

20 Ответы

0 голосов
ответил 27 Июнь, 07 от master (380 баллов)

Это задумка разработчиков такая или все-таки баг?

Очень неудобно для каждой БД вешать свой сервис SDE

0 голосов
ответил 27 Июнь, 07 от Grigoriy (127,020 баллов)
А Вы не стесняйтесь image.
Это никакой не баг. Это так нужно.
Есть правда, старый вариант. Но вот с ним точно "не удобно".
В этом варианте репозиторий хранится в базе SDE - по другому её называть НЕЛЬЗЯ.
У пользователя-владельца данных должны быть положенные ему права в этой базе. Имя пользователя должно отличаться от SDE. И, если база по-умолчанию у этого пользователя отличается от SDE, то данные физически будут ложиться в эту базу. При этом подключение обязательно должно осуществляться через общий SDE-cервис.
Параметры физического хранения данных (в какой файловой группе базы данных какие будут лежать таблицы или индексы) регулируются ключевыми словами в таблице sde.server_config.
0 голосов
ответил 27 Июнь, 07 от PITKS1 (20,860 баллов)
Григорий, а почему вариант с одной SDE базой и кучей баз данных Вы называете "старым и неудобным". По мне так наоборот - намного удобнее, чем держать кучу сервисов. Я еще могу понять на Oracle или DB2 - там надо keywords использовать что бы загнать данные в нужные tablespace. А в MS SQL все тривиально - есть одна SDE база, один сервис и куча баз с данными. Указал в коннекте другого юзера и другую базу - все пошло записываться в нее.

Другое дело, что потихоньку эта конфигурация будет умирать - ESRI убивает ArcSDE медленно и уверенно. Все будет работать через DirectConnect.
0 голосов
ответил 27 Июнь, 07 от Grigoriy (127,020 баллов)
Да просто потому что всё это очень весело потом переносить при надобности. Допустим мне нужны данные по одному проекту (а у меня их много) установить наконец у заказчика. В такой конфигурации данные придется выгружать или в персональную базу или в обменный формат или ещё куда. А потом загружать на новое место.
В случае, если данные по проекту вместе с репозиторием в одном месте (базе), то достаточно просто сделать backup всей базы (или dettach) и неси куда хочешь.
Ну и ещё один недостаток SDE - информация о наборах данных (feature dataset) хранится в репозитории и видна всем пользователям в не зависимости от прав. И если у меня данные вместе с разными репозиториями лежат в разных базах, то пользователи видят только те наборы, которые лежат в конкректной базе - остальные их не раздражают.
А в остальном - дело вкуса. Или конкректных условий или потребностей. Какую из конфигураций выбрать - решать Вам.
Работают все одинаково успешно.
0 голосов
ответил 10 Июнь, 09 от pooperec (10,820 баллов)
Окончательно запутался =)

Если у меня имеется ArcInfo 9.3, я могу подключиться к пространственным данным MS SQL Server 2008 через директ коннект?

А если у меня есть приложение разработанное с помощью Engine и имеющее лицензию Runtime и "продвинутую" лицензию для редактирования БД может ли оно:
1. Подключиться и отобразить данные которые храняться на сервере.
2. Редактировать их (совместно с другим приложением)?

А ArcExplorer может подключиться к такому серверу (MS SQL Server 2008)?
0 голосов
ответил 10 Июнь, 09 от Grigoriy (127,020 баллов)
Если у Вас правильно установлен и развернут ArcSDE для MS SQL Server 2008 (персональный, для рабочих групп или корпоративный) то ответ на все вопросы - да.

И ArcExplorer и ArcGIS Explorer не работают с прямым подключением (direct connect) к SQL Server. Они используют подключение к сервису SDE через SDE API.
0 голосов
ответил 11 Июнь, 09 от pooperec (10,820 баллов)
Спасибо, ответьте пожалуйста на следующий вопрос(ы):
1. ArcSDE разворачивается на стороне сервера?
2. ArcSDE как мне объяснили есть ArcGIS Serve Basic, это верно?
3. Если является (см. п. 2) то разве возможно совместное редактирование (одновременное) несколькими пользователями (к примеру 4мя)?
0 голосов
ответил 12 Июнь, 09 от PITKS1 (20,860 баллов)
1. ArcSDE разворачивается на стороне сервера?

Можно просто создать SDE схему в базе, и использовать DirectConnect не запуская сам SDE сервис

2. ArcSDE как мне объяснили есть ArcGIS Serve Basic, это верно?

ArcGIS Server Basic Enterprise

3. Если является (см. п. 2) то разве возможно совместное редактирование (одновременное) несколькими пользователями (к примеру 4мя)?

Хоть сотней.


Григорий

9.3 умеет читать MS SQL 2008 Spatial формат через Data interoperability. SDE в этом случае не обязательно.
0 голосов
ответил 15 Июнь, 09 от Vadim (28,120 баллов)
9.3 умеет читать MS SQL 2008 Spatial формат через Data interoperability. SDE в этом случае не обязательно.
  PITKS, а где можно по потробней про такую схему почитать?
0 голосов
ответил 18 Июнь, 09 от Grigoriy (127,020 баллов)
Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...