понедельник, 29 августа 2011 г.

Установка git на centos сервер

Система: centos minimal 5.6

Так как в репозиториях в centos  нет git, то необходимо его собирать самим.

Все проделала по этой статье, все заработало.

среда, 13 июля 2011 г.

Восстановление redmine

Речь пойдет о переносе базы и файлов redmine 1.0.1 на другой сервер redmine 1.2.0.

При установке и настройке redmine предлагается поставить и инициализировать базу для работы редмайна. Мы так и сделали. Но возникла необходимость пользоваться редмайном на другом сервере, и наша база уже работает и настроена так, как нам нужно. Задача - безопасно перенести нашу базу на другое место. Мы создавали базу с отдельным владельцем - пользователь, созданный для работы и доступа к нашей БД. Это мы тоже учтем при переносе.

1) Скачать redmine, распаковать redmine в нужную папку. Например, в /var/local
2) Скопировать из старой redmine в новую папку files/
3) Сделать dump базы данных redmine на старом сервере:
  
     !!! Владелец БД и таблиц в старой базе должен быть такой же как и в новой базе поскольку используемая нами команда с ключами pg_restore восстанавливает дамп дословно в новую созданную нами базу данных с таким же именем.


     # su - postgres
     -bash-3.2$ pg_dump -Fc mydb > db.dump
     сделать дамп базы mydb в файл с опцией очистки объектов до их создания и опцией  указания  формата архива (т.е. дамп) db.dump
     дамп сохраняется в /var/lib/pgsql/ (оттуда потом надо его скопировать)
     # cp /var/lib/psql/db.dump /home/testuser
     # scp /home/testuser/db.dump user@x.x.x.x:/home/user
    скопировали файл дампа БД на сервер, куда нужно восстановить редмайн.
     dropdb mydb 
     удаляем старую базу redmin-a если ставили redmine и настраивали стандартную базу.
     
    В утилите psql:
    -bash-3.2$ psql
    postgres# CREATE USER test_user WITH password 'test';
    postgres#  CREATE DATABASE mydb WITH OWNER = test_user 
                     ENCODING = 'UTF8' TABLESPACE = pg_default 
                     LC_COLLATE = 'en_US.UTF-8' LC_CTYPE = 'en_US.UTF-8' 
                     CONNECTION LIMIT = -1;
 понятное дело, вместо testdb и test_user вставить те значения, которые были на предыдущем сервере.
   postgres# \q
  -bash-3.2$ pg_restore -d mydb db.dump
восстанавливаем базу в созданную нами только что базу из файла db.dump


4) пересоздать заново сессию для БД в редмайне:

#rake db:migrate RAILS_ENV=production 

(про плагины - если есть - не забываем и читаем статью об этих командах из второго источника)

5) необходимо очистить сессию и куки (для применения новых настроек и учеток пользователей)

#rake tmp:cache:clear
#rake tmp:sessions:clear

6) перезапускаем сервер приложений, на котором крутится редмайн

#service httpd restart

7) удостовериться, что владелец - именно тот, который нам нужен и база создана, можно набрать psql -l (зайдя перед этим под пользователя postgres)

Источники: http://www.postgresql.org/docs/8.4/static/app-pgrestore.html

             http://www.redmine.org/projects/redmine/wiki/RedmineUpgrade