This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Installing Ensembl Locally

I am trying to install latest ENSEMBL web interface. The documentation is somehow outdated and not covering crucial points, so it is almost a research project on its own, with many surprises. I am describing the process here:

http://openwetware.org/wiki/Wikiomics:Ensembl_local_install

(go to the bottom to see the current installation status)

It is full of death ends and twists, but I think I am inching slowly towards if not fully functional install then at least some understanding. Few questions:

  • I did specify in public-plugins/mirror/conf/SiteDefs.pm ENSEMBL_USERDB_NAME (my_mysql_write_user) and ENSEMBL_USERDB_PASS but I am getting in the browser:

    DBI connect('ensembl_web_user_db:localhost:3306','',...) failed: Access denied for user 'ensembl'@'localhost' (using password: NO) at /home/ensembl/local/lib/perl5/site_perl/5.12.0/Ima/DBI.pm line 328
    

    I am able to connect to mysql, use ensembl_web_user_db, insert a value into one of the tables using mysql -u ensembl -p. Somehow somewhere in ensembl perl code stuff is not executed and default np password connection is attempted. Any ideas how to solve it?

  • how to make ensembl code execution way more chatty? Right now the whole modules may just fail silently, I get an error from another one etc.

  • various perl modules may need a different versions of say libwww-perl (LWP). What are the options to ask i.e. ParallelUserAgent to use the old version and everything else a newer one (if that is required)? Is that a viable option at all?

Thanks a lot.

genome database

Hi Pierre. I will, but seems that they right now are very busy with the next ENSEMBL release, so any help from perl/Apache/MySQL heads is better than no help at all. :-)

First question - do you need a local Ensembl? For your own custom data sources?

@Neil: in short yes. There is no point of going through all of this to shave milliseconds in a browser for accessing Homo sapiens. I am not sure if Ensembl is the right tool, but I have to install it anyway, because I have been told by my boss to do so ,-). If there is a temp solution (say "working GMOD in a day") that will do as a stop gap.

OK - wish I could be more helpful, but it sounds like you are going about this the right way by documenting the process. Since "mysql -u ensembl -p" works, it seems clear that there's an issue with SiteDefs.pm or some other config file - hopefully not just a typo or syntax error!

I know a lot of people who could have installed a local Ensembl over the years and not one of them has done so, which speaks to the complexity of the procedure. All I can say is best of luck and thanks for the documentation effort.

1 answer

I got ENSEMBL working on my workstation, thanks to some suggestions from Eagle Genomics person (it was a free consultation since he also works in a non-profit).

By default Ubuntu's mysql locks out any network connections in /etc/my.cnf , line: bind-address = 127.0.0.1

Commenting out this makes MySQL more permissive. Next step is to grant all privileges to user accessing MySQL via ENSEMBL web code (say "ensembl-mysql" user).

Finally, if one can not find what's wrong with a password a short term "solution" is to remove passwd for "ensembl-mysql". Once you get connection you will bump into two(?) other issues with missing perl modules, but installing them through CPAN shell is trivial.

re unsecured MySQL account: I am behind a firewall with a machine with few accounts for the guys from my group, so I am not that exposed during the testing phase. One way of improving the security is to replace some obvious user name (like "ensembl") with a md5sum created (i.e. pick any text file you created) and get something like "1a8d1d9ced6ec9132446cc1180c41dcf". There is limit of 16 chars for User, but I think it should be harder to exploit the hole with a username like "HA1a8D1d9cEd6ec".

Obviously I will keep on searching for a proper fix and keep you posted.

Log in to answer this question.