Project

General

Profile

RusRedmineUpgrade » History » Version 3

Denis Savitskiy, 2011-06-30 12:07

1 1 Ruslan Khasanov
[[RusGuide|Руководство]]->[[RusInstallation_guide|Руководство по установке]]
2
3 2 Ruslan Khasanov
Оригинал: [[RedmineUpgrade|Upgrading an existing installation v.44]]
4
5 1 Ruslan Khasanov
h1. Обновление существующей установки
6
7
{{>toc}}
8
9
h2. Шаг 1 - Проверьте требования
10
11 2 Ruslan Khasanov
Первый шаг к модернизации Redmine - проверить соответствие [[RusRedmineInstall|требованиям]] версии, которую вы собираетесь установить.
12 1 Ruslan Khasanov
13
h2. Шаг 2 - Резервное копирование
14
15
Рекомендуется сделать резервную копию базы данных и файлов на сервер. Большинство обновлений являются безопасными, но никогда не помешает иметь резервную копию на всякий случай.
16
17
h3. Резервное копирование файлов
18
19
Все загруженные файлы хранятся в каталоге files/. Вы можете скопировать содержимое этого каталога в другое место, чтобы cоздать резервную копию.
20
21
h3. MySQL база данных
22
23
Команда mysqldump может использоваться для резервного копирования содержимого вашей базы данных MySQL в текстовый файл. 
24
Например:
25
<pre>
26
/usr/bin/mysqldump -u <username> -p<password> <redmine_database> | gzip > /path/to/backup/db/redmine_`date +%y_%m_%d`.gz
27
</pre>
28
29
h2. Шаг 3 - Выполнить обновление
30
31
Теперь пришло время для выполнения фактического обновления. Этот процесс является различным в зависимости от того, как вы скачали Redmine. Вам только нужно выполнить один из следующих вариантов.
32
33 2 Ruslan Khasanov
h3. Вариант 1 - Если [[Download|скачивали]] релизы tar.gz или ZIP-файл
34 1 Ruslan Khasanov
35
# Распакуйте новый архив программы в новый каталог
36
# Скопируйте настройки базы данных, файл config/database.yml в директорию config новой директории установки
37
# Скопируйте настройки электронной почты, файл config/email.yml в директорию config новой директории установки
38
# Скопируйте содержимое каталога files/ в новую директорию установки
39
# Скопируйте папки ваших установленных плагинов в новую директорию установки
40
# Выполните следующую команду из корневого каталога Redmine:
41
<pre>
42
rake config/initializers/session_store.rb
43
</pre>
44
Выполните:
45
<pre>
46
rake generate_session_store
47
</pre>
48
Это сгенерирует файл (config/initializers/session_store.rb) со случайными данными, используемый для защиты данных сессии.
49
# Проверьте, нет ли тем, которые вы могли установить в каталог "public/themes". Вы тоже можете их скопировать, но проверьте подходят ли они для обновленной версии.
50
51 2 Ruslan Khasanov
*ОЧЕНЬ ВАЖНО*: не заменять файл config/settings.yml старой версией!
52 1 Ruslan Khasanov
53
h3. Вариант 2 - Обновление с SVN Checkout
54
55
# Перейти в корневой каталог Redmine и запустить следующую команду:
56
<pre>
57
svn update
58
</pre>
59
# Если вы обновляете старую версию на 0.8.7 и выше или из trunk версии Redmine на r2493 или выше, необходимо сгенерить файл для защиты данных сессии. См. выше про генерацию session_store.
60
61
h2. Шаг 4 - Обновление базы данных
62
63
Этот шаг может изменить содержимое базы данных. Перейти на новый каталог Redmine и запустите перенос базы данных:
64
<pre>
65
rake db:migrate RAILS_ENV=production
66
</pre>
67
68
Если у вас установлены какие-либо плагины, вы также должны запустить миграцию их баз данных:
69
<pre>
70
rake db:migrate:upgrade_plugin_migrations RAILS_ENV=production
71
rake db:migrate_plugins RAILS_ENV=production
72
</pre>
73
74
h2. Шаг 5 - Очистка
75
76
# Вам необходимо очистить кэш и существующие сессии:
77
<pre>
78
rake tmp:cache:clear rake tmp:sessions:clear
79
</pre>
80
# Перезагрузите сервер приложений (например, mongrel, thin, passenger)
81
# Наконец, передите в "Admin -> Роли и разрешения" , чтобы проверить/задать разрешения для новых возможностей, если таковые имеются.
82
83
84
h2. Возможные проблемы
85
86
h3. Rack n.n.n cannot be loaded because Rack n.n.n is already activated
87
88
При использовании Rails 2.3.5 можно получить следующее сообщение Rack 1.0.1 cannot be loaded because Rack 1.0 is already activated.
89
Для решения необходимо изменить файл action_controller в папке приложения по следующему пути vendor/rails/actionpack/lib/action_controller.rb
90
Найти строки 34 и 35, закомитить их и добавить строку чтобы выглядело так
91
<pre>
92
#gem 'rack', '~> 1.0.1'
93
#require 'rack'
94
load "/usr/lib/ruby/gems/1.8/gems/rack-1.1.0/lib/rack.rb"
95
</pre>
96
Причем путь надо заменить на нужный
97
98 3 Denis Savitskiy
h3. SVN репозиторий не открывается
99 1 Ruslan Khasanov
100
в логах мини веб-сервера thin (/var/log/thin/thin.0.logh) пишется что-нить подобное:
101
102
<pre>
103
svn: OPTIONS of 'https://Сервер/svn/проект': Server certificate verification failed: issuer is not trusted (https://Сервер)
104
</pre>
105
106
Лекарство: 
107
В файле /usr/share/redmine/lib/redmine/scm/adapters/subversion_adapter.rb
108
найти строку 
109
<pre>
110
str << " --no-auth-cache --non-interactive"
111
</pre>
112
113 3 Denis Savitskiy
и добавить ключ, включающий поддержку неизвестных SSL сертификатов:
114 1 Ruslan Khasanov
<pre>
115
str << " --trust-server-cert --no-auth-cache --non-interactive"
116
</pre>