User:Зелёный Кошак/Сервер OSM/Чек-листы/Миграция

From OpenStreetMap Wiki
Jump to navigation Jump to search
  • на исходном сервере слить базу(ы):
pg_dump dbname=<development db> -f <файл дампа>.sql
dropdb <development db>
  • создать заново базу на новом сервере:
createdb -E UTF8 -O <db user> <development db>
  • залить дамп в базу на новом сервере:
psql -f <файл дампа>.sql --dbname <development db>
  • обновить базу на новом сервере:
bundle exec rake db:migrate
  • обновить функции:
psql -d <developed db> -c "DROP FUNCTION IF EXISTS maptile_for_point"
psql -d <developed db> -c "DROP FUNCTION IF EXISTS tile_for_point"
psql -d <developed db> -c "DROP FUNCTION IF EXISTS xid_to_int4"
cd <каталог для рейл-порта>/openstreetmap-website
psql -d <developed db> -c "CREATE FUNCTION maptile_for_point(int8, int8, int4) RETURNS int4 AS '`pwd`/db/functions/libpgosm', 'maptile_for_point' LANGUAGE C STRICT"
psql -d <developed db> -c "CREATE FUNCTION tile_for_point(int4, int4) RETURNS int8 AS '`pwd`/db/functions/libpgosm', 'tile_for_point' LANGUAGE C STRICT"
psql -d <developed db> -c "CREATE FUNCTION xid_to_int4(xid) RETURNS int4 AS '`pwd`/db/functions/libpgosm', 'xid_to_int4' LANGUAGE C STRICT"