= MonetDBInstallationUbuntu = Not much to say here just some cautionary notes. == Installed Libraries == The package {{{configure}}} scripts fails to inform the developer if the following packages are not installed: * libreadline5-dev * libxml2-dev * libgeos-dev You should be sure they are installed before attempting to build the package from source. '''There may be other packages that should be installed that I may have had installed, so didn't notice them missing, or may be required for certain features to be enabled. With what I added above everything compiled and installed properly.''' == Compilation == If you prefer a checkout from the CVS Trunk you will need to have a lot more packages installed. See [[http://monetdb.cwi.nl/projects/monetdb/SQL/Documentation/Linux-Installation.html| Expert Documentation]]. The one thing they don't mention is that the {{{autogen}}} Python path needs to be added to your PYTHONPATH environment. It is located here: {{{path/to/buildtools/autogen/build/lib}}}. ''Press Enter when prompted for a password to create an anonymous login.'' {{{ $ cvs -d:pserver:anonymous@monetdb.cvs.sourceforge.net:/cvsroot/monetdb login $ cvs -z3 -d:pserver:anonymous@monetdb.cvs.sourceforge.net:/cvsroot/monetdb co -P packagename }}} To find the packages go to the MonetDB ViewVC link: [[http://monetdb.cvs.sourceforge.net/viewvc/monetdb/|CVS Trunk]] To determine which packages from CVS you will need use this link: [[http://monetdb.cwi.nl/projects/monetdb//MonetDB/Documentation/Experts.html|Package Dependencies]] I prefer to cd to each directory and run the {{{configure}}} command then do a {{{make}}} then {{{make install}}}, in this way you can easily check if you have all the packages installed then try again. The MonetDB build instructions recommends you run the {{{monetdb-install.sh}}} script, however this script will fail at the first sign of trouble then you need to do the entire build again since it does it's build from {{{/var/tmp}}} using a uniquely generated path for each build attempt. Also this script needs to be run as root if you are doing the install globally to your system, whereas you can just do only the install as root if built from the individual directories. The following options are recommended in the MonetDB build instructions, but you have to search for them. {{{ $ ./configure --prefix='/usr/local/MonetDB/' --enable-debug=no --enable-assert=no --enable-optimize=yes $ make $ sudo make install }}} When running {{{configure}}} in the MonetDB5 directory you may need to add the argument {{{--disable-strict}}} to get it to compile. == Account Setup == Be sure you create user and group accounts for {{{monet}}} and assign them to the {{{/usr/local/MonetDB}}} or whatever the path you have chosen. Run {{{pwgen}}} which will dump to the screen a bunch of arbitrary strings, grab a few of them removing any spaces and put them in a new file named {{{/usr/local/MonetDB/etc/monetdb.secret}}}. == Starting MonetDB == I have created a startup script. If run without arguments you will get a list of all possible arguments. [[attachment:monetdb.sh]] {{{ $ ./monetdb Usage: ./monetdb {start|stop|restart|status|create "database"|import "database user file"} }}} * start -- Starts the {{{merovingian}}} daemon. This controls the starting and stopping of the actual database servers. * stop -- Stops the {{{merovingian}}} daemon. * restart -- Restarts the {{{merovingian}}} daemon. * status -- Prints to the screen the PID of the {{{merovingian}}} daemon. * create "database" -- Creates the database passed as the second argument. * import "database user file" -- Imports the SQL file with specified database, database user and the SQL file. Normally you will need to run this script as the '''root''' user as in the example below: {{{ $ sudo ./monetdb start }}}