X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/3bbeb70642a9403e0d1acce9fc9f780065206eab..72e33046c80bddc0ca9b1336786dcb4b349137f7:/db/README diff --git a/db/README b/db/README index 466a16cc4..db4f5c20e 100644 --- a/db/README +++ b/db/README @@ -1,36 +1,89 @@ Creating database -===================== +=================== -OSM server use databse with follow name : +OSM server uses a database with the following name: openstreetmap -You may create it with your prefrable client or run next (linux) command : +You may create it with your preferable client or run next (linux) command: -$ mysqladmin -u -p create openstreetmap +$ mysql -u -p + +(change with appropriate username of administrative user eg. root ) -(change with appropriate username of administrativ user eg. root ) +> create database openstreetmap default character set utf8; +> exit -Creating user, password, and access rightts -============================================= +Creating user, password, and access rights +============================================ $ mysql -u -p -(change with appropriate username of administrativ user eg. root ) +(change with appropriate username of administrative user eg. root ) > grant all privileges on openstreetmap.* to 'openstreetmap'@'localhost' identified by 'openstreetmap'; > flush privileges; > exit +Creating functions For MySQL +============================== + +Run this command in the db/functions directory: + +$ make libmyosm.so + +You might also need to install: +- mysql client development libraries: $ sudo apt-get install libmysqlclient16-dev +- ruby development libraries: $ sudo apt-get install ruby1.8-dev +for build to succeed. + +Make sure the db/functions directory is on the MySQL server's library +path and restart the MySQL server. + +On Linux the easiest way to do this is to create /etc/ld.so.conf.d/osm.conf, and place the path to the db/functions directory in it and then run the ldconfig command as root. + +On OS X: sudo ln -s /path_to_your_osm_install/sites/rails_port/db/functions/libmyosm.so /usr/local/lib/libmyosm.so + +Now create the functions as follows: + +$ mysql -u -p openstreetmap + +(change with appropriate username of administrative user eg. root ) + +> create function tile_for_point returns integer soname 'libmyosm.so'; +> create function maptile_for_point returns integer soname 'libmyosm.so'; +> exit + +Creating functions for PgSQL +============================== + +Run this command in the db/functions directory: + +$ make libpgosm.so + +You might also need to install: +- postgresql development libraries: $ sudo apt-get install postgresql-server-dev-8.3 +- ruby development libraries: $ sudo apt-get install ruby1.8-dev +for build to succeed. + +Now create the function as follows: + +$ psql openstreetmap +(This may need authentication or a -u ) + +> CREATE FUNCTION maptile_for_point(int8, int8, int4) RETURNS int4 + AS '/path/to/rails-port/db/functions/libpgosm.so', 'maptile_for_point' + LANGUAGE C STRICT; + Creating database skeleton tables =================================== -$ mysql openstreetmap -u openstreetmap -p < db/create_database.sql - -New server patch (RAILS) -========================== +Run this command from the root of your rails directory: -Run follow command to prepare tables to be OSM REILS distribution compatible : +$ rake db:migrate -$ mysql openstreetmap -u openstreetmap -p < db/migrate.sql +This will create the db for you +You will need to make sure the database connection is configured in database.yml in config directory +You might start with example configuration provided: +$ cp config/mysql.example.database.yml config/database.yml