Настройка подключения JIRA 4.4 к MS SQL Server 2000


При настройке JIRA можно указать использование внешней (external) базы данных, а не внутренней (internal). В этом случае получаем плюсы хранения всех данных (за исключением файлов-аттачментов) на SQL БД.

Создаем пустую БД на SQL Server'е.
Создаем логин, и соответствующего пользователя в созданной БД. При этом он должен входить в группу db_owner (при этом не являясь собственно dbo). Под этим логином JIRA будет подключаться к БД.

Далее в параметрах подключения к БД указываем:
  Database Type = SQL Server
  Port = 1433 (по умолчанию MS SQL использует такой)
  Database = <ИМЯ_СОЗДАННОЙ_БД>
  UserName = <ИМЯ_СОЗДАННОГО_ПОЛЬЗОВАТЕЛЯ>
  Password = <ПАРОЛЬ>
  Schema = dbo (стоит по-умолчанию)

И вот тут начинаются проблемы: при попытке продолжить (или выполнить проверку подключения) возникает ошибка - The database specified is not empty. Please specify an empty database for your JIRA installation.

Всё дело в том, что под dbo даже в "пустой" (свежесозданной) БД есть некоторые объекты. JIRA это проверяет (по-моему при помощи процедуры sp_tables), находит объекты, и ей это не нравится. Наверное, настройки подключения заточены под MS SQL Server 2008, и можно было бы самостоятельно создать пустую схему, отличную от dbo.

Здесь можно поступить следующим образом:
  - в настройках указываем Schema = <НЕКАЯ_НЕСУЩЕСТВУЮЩАЯ_СХЕМА>, например jira_schema
  - JIRA это удачно скушает именно на проверке параметров
  - далее возникнет сообщение об ошибке - JIRA не сможет продолжить работу, т.к. не сможет найти указанную схему
  - открываем файл настроек подключения к БД dbconfig.xml (если пути по-умолчанию не менялись, то находится в папке C:\Program Files\Atlassian\Application Data\JIRA)
  - меняем в нем параметр schema-name на dbo (для нашего примера нужно изменить строку <schema-name>jira_schema</schema-name> на <schema-name>dbo</schema-name>)
  - перезапускаем сервис JIRA
  - перезаходим в браузере (или обновляем) страницу настроек - JIRA успешно подхватывает настройки и начинает создавать объекты в БД
 

PS. Перенос данных вполне удачно выполняется средствами самой JIRA через XML экспорт/импорт (проверено на переносе данных из версии 3.8 в версию 4.4)

PPS. При переносе данных переносятся и все системные настройки - в том числе и путь хранения файло-аттачментов. Приэтом в версии 4.4 этот путь можно изменить только на "стандартный" (если пути по-умолчанию не менялись, то C:\Program Files\Atlassian\Application Data\JIRA\data\attachments). Соответственно в этом случае нужно перенести все папки/подпапки (которые соответствуют кодам проектов и кодам задач) с содержащимисимя файлами в новый каталог из старого.


Нравится