]> git.openstreetmap.org Git - rails.git/blobdiff - db/README
New /copyright page for ODbL
[rails.git] / db / README
index d89a67bfb8bfb0603aac985e4dbd5295a3deff66..814dcb96cf8421f2912898d8b4582176b0910e0e 100644 (file)
--- a/db/README
+++ b/db/README
@@ -1,59 +1,34 @@
 Creating database
 ===================
 
-OSM server uses a database with the following name:
+OSM server uses a Postgres database with the following name:
 
 openstreetmap
 
 You may create it with your preferable client or run next (linux) command:
 
-$ mysqladmin -u <uid> -p create openstreetmap
+$ createdb openstreetmap
 
-(change <uid> with appropriate username of administrative user eg. root )
-
-Creating user, password, and access rights
-============================================
-
-$ mysql -u <uid> -p
-
-(change <uid> with appropriate username of administrative user eg. root )
-
-> grant all privileges on openstreetmap.* to 'openstreetmap'@'localhost' identified by 'openstreetmap';
-> flush privileges;
-> exit
-
-Creating functions
-====================
+Creating functions for PgSQL
+==============================
 
 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 libpgosm.so
 
-$ make libquadtile.dylib
+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.
 
-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:
+Now create the function as follows:
 
-$ ldconfig
+$ psql openstreetmap
+(This may need authentication or a -u <dbowneruid>)
 
-Now create the functions as follows:
-
-$ mysql -u <uid> -p openstreetmap
-
-(change <uid> with appropriate username of administrative user eg. root )
-
-> create function tile_for_point returns integer soname 'libquadtile.so';
-> exit
-
-or, for MacOS X:
-
-> create function tile_for_point returns integer soname 'libquadtile.dylib';
-> exit
+> 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
 ===================================
@@ -63,3 +38,7 @@ Run this command from the root of your rails directory:
 $ rake db:migrate
 
 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/example.database.yml config/database.yml