X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/dd9ad16303f0496455720721e01b3c5042094f38..d10931effaabdbdd063029394981a26893a47db5:/db/README diff --git a/db/README b/db/README index d89a67bfb..39ce18023 100644 --- a/db/README +++ b/db/README @@ -7,10 +7,13 @@ openstreetmap 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 ) +> create database openstreetmap default character set utf8; +> exit + Creating user, password, and access rights ============================================ @@ -22,24 +25,19 @@ $ mysql -u -p > flush privileges; > exit -Creating functions -==================== +Creating functions For MySQL +============================== Run this command in the db/functions directory: -$ make - -The above command should work for linux and most other Unix systems -that use ELF shared objects. For MacOS X you will need to do: - -$ make libquadtile.dylib +$ make libmyosm.so 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 following command as root: +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. -$ ldconfig +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: @@ -47,13 +45,25 @@ $ mysql -u -p openstreetmap (change with appropriate username of administrative user eg. root ) -> create function tile_for_point returns integer soname 'libquadtile.so'; +> create function tile_for_point returns integer soname 'libmyosm.so'; +> create function maptile_for_point returns integer soname 'libmyosm.so'; > exit -or, for MacOS X: +Creating functions for PgSQL +============================== -> create function tile_for_point returns integer soname 'libquadtile.dylib'; -> exit +Run this command in the db/functions directory: + +$ make libpgosm.so + +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 ===================================