Опять про создание еще одной БД в 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 голосов
ответил 21 Июнь, 07 от Grigoriy (127,020 баллов)
имя БД data
"data" - ключевое слово
попробуйте обозвать Вашу базу по-другому.
0 голосов
ответил 25 Июнь, 07 от master (380 баллов)

Удалил базу данных data, создал БД arhikub1. Дал права. Все равно вываливается это сообщение :(

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

Такое впечатление будто бы SDE "не видит" БД, отличную от arhikub_sde

0 голосов
ответил 25 Июнь, 07 от Grigoriy (127,020 баллов)
Для каждой такой базы вообще-то нужно создать свой сервис в операционной системе. Т.е. запустить ещё один SDE. Сервис создается или с помощью пост-инсталл (не нужные шаги нужно пропустить) или командой sdeservice.exe.
Или использовать директ-коннект при создании подключения в ArcCatalog.
0 голосов
ответил 25 Июнь, 07 от PITKS1 (20,860 баллов)
Не надо новых сервисов !!!!.

1. Создаете новую базу
2. Создаете юзера (владельца базы)
3. Даете этому юзеру db_owner на базу. (если база SQL2005 - default schema должна совпадать с именем юзера.
4. sde юзеру даете права на вновь созданную базу (я даю db_owner права. Можно - как в инструкции выше). default schema - sde.

Все должно работать как часики.
0 голосов
ответил 26 Июнь, 07 от master (380 баллов)

Сделал еще раз... не работает. Все та же ошибка :( Вообще теперь мыслей нет :( Мож еще что-нить можно потыкать?

0 голосов
ответил 26 Июнь, 07 от PITKS1 (20,860 баллов)
Какой SQL Server стоит ?
0 голосов
ответил 26 Июнь, 07 от Grigoriy (127,020 баллов)
Давайте по-порядку.
Вы базу новую создали?
пост-инсталл для неё выполнили?
репозиторий в базе создался успешно?

Дальше чтобы, подключится к этой базе есть 2 варианта:

1. старый добрый способ - сначала создать новый сервис SDE с новым номером tcp-порта. Сервис должен стартовать на сервере и отчитаться, что он работает. После этого Вы можете подключаться к нему через ArcCatalog указывая параметрах соединения не только "имя БД data, имя юзера, пароль", но новое имя SDE сервиса (или номер порта).
image

2. Можно, как пишет наш уважаемый PITKS, не создавать новый сервис. А создать так называемый direct-connect к этой базе. Формат строки подключения в этом случае отличается.
Вместо имени сервиса нужно написать sde:sqlserver:имя_вашего_сервера - это если сервер MS SQLServer.
image

А вот с правами и ролями, я всё же так как рекомендует PITKS не поступал. Все необходимые и достаточные права пользователям в зависимости от назначения расписаны в ArcSDE_Config_Gd_SQLServer.pdf
0 голосов
ответил 27 Июнь, 07 от master (380 баллов)

Григорий, если я Вас правильно понял, то для каждой созданной вновь БД на сервере SQL , нужен отдельный сервис SDE?

0 голосов
ответил 27 Июнь, 07 от Grigoriy (127,020 баллов)
Да, со своим собственным портом.
Или использовать директ-коннект.
Добро пожаловать на сайт Вопросов и Ответов, где вы можете задавать вопросы по GIS тематике и получать ответы от других членов сообщества.
...