Page 1 of 2 12 LastLast
Results 1 to 10 of 12

Thread: Separate database server?

  1. #1
    RoyK is offline Senior Member
    Join Date
    Sep 2009
    Posts
    51
    Rep Power
    5

    Default Separate database server?

    Hi all

    This has bee brought up earlier, but I want to ask again. What will it take to separate the database server out of Zimbra? It's a MySQL database, not patched, a standard thing, and in larger setups you usually have a dedicated database server, of good reason. It is usually better on I/O than your general pizzabox, it may have more memory et ceterea.

    Now, earlier answers to this question has been something like "Zimbra is a closed platform, don't touch it". Since Zimbra uses mostly open source software, I find this hard to beleve.

    So, can someone please tell me how I can use my fat-ass database server with Zimbra instead of running it all in one place?

    roy

  2. #2
    bdial's Avatar
    bdial is offline Moderator
    Join Date
    Jul 2007
    Location
    Baltimore
    Posts
    1,649
    Rep Power
    11

    Default

    zimbra is open source, but the particular build the zimbra team produces relies on having a local mysql server.

    so what do you need to do? you need to build zimbra yourself, modifying it to establish all connects to mysql via tcp/ip instead of local socket. you'd probably also have to modify a lot of scripts like hte mailboxd startup script in order to make it start even though it detects mysqld not running (or maybe you could fool it with some fake pid files)

    it's a lot of work, but if you have a real fat-ass database server perhaps it'll be worth it.

  3. #3
    RoyK is offline Senior Member
    Join Date
    Sep 2009
    Posts
    51
    Rep Power
    5

    Default

    Wouldn't it be a good idea to add a global configuration parameter for this? I'm certain a lot of people would find this useful.

  4. #4
    bdial's Avatar
    bdial is offline Moderator
    Join Date
    Jul 2007
    Location
    Baltimore
    Posts
    1,649
    Rep Power
    11

    Default

    it's not as easy as that. zimbra would essentially have to carve out the mysql into a separate package, almost like ldap is. in a multiserver environment you can have a server that does nothing but ldap, and even replicas too.

    so many utilities would have to be rewritten to accomidate this sort of setup. like zmmailboxmove which normally moves the messages, index, and database to another server when moving mailboxes in a multiserver setup would have to be rewritten to not move the db because the db would stay central.

    you could file a rfe for this, but it would be a pretty large overhaul of the code and unlikely to see it anytime soon since zcs7 is in beta now and theres no way it'd make it into that

  5. #5
    RoyK is offline Senior Member
    Join Date
    Sep 2009
    Posts
    51
    Rep Power
    5

    Default

    This looks like a major design flaw. Any other app I've worked with over the years have the database interface separately, and commonly, configured. Hardcoding that sort of info in a bunch of scripts is not good. Is this really what Zimbra is doing?

  6. #6
    uxbod's Avatar
    uxbod is offline Moderator
    Join Date
    Nov 2006
    Location
    UK
    Posts
    8,017
    Rep Power
    24

    Default

    If your feelings are that strong then please feel free to raise an RFE.

  7. #7
    LMStone's Avatar
    LMStone is offline Moderator
    Join Date
    Sep 2006
    Location
    477 Congress Street | Portland, ME 04101
    Posts
    1,367
    Rep Power
    10

    Default

    Quote Originally Posted by RoyK View Post
    This looks like a major design flaw. Any other app I've worked with over the years have the database interface separately, and commonly, configured. Hardcoding that sort of info in a bunch of scripts is not good. Is this really what Zimbra is doing?
    I would respectfully disagree that Zimbra's 1:1 relationship between each mailbox server and a unique MySQL instance is a design flaw.

    It is not uncommon in a multi-server Zimbra environment for each mailbox server to be configured to host groups of users with similar needs and consequently where the load on each mailbox server is very different. Zimbra's architecture enables us to tweak each mailbox server's MySQL instance appropriately for each mailbox server's use case. If there was one separate MySQL server (or MySQL farm) for all Zimbra mailbox servers in a Zimbra farm, our ability to tune MySQL would be severely restricted.

    We also support a number of different LAMP stack applications aside from Zimbra, and in one very large multi-site Drupal installation we have taken to running separate instances of MySQL (on different ports, on one server) as one MySQL instance could not be tuned appropriately for all of the sites in the farm.

    We have also done quite a bit of MySQL tuning for EMRs, CRM and other DB-heavy applications, and I can tell you that I very much appreciate in Zimbra the flexibility to tune each mailbox server's MySQL instance as needed.

    Hope that helps,
    Mark

  8. #8
    RoyK is offline Senior Member
    Join Date
    Sep 2009
    Posts
    51
    Rep Power
    5

    Default

    Hi

    May I ask what sort of fine-tuning is done except by database structure and indices? The installed package, mysql-standard-5.0.90-pc-linux-gnu-i686-glibc23, looks pretty standard to me

    roy

  9. #9
    uxbod's Avatar
    uxbod is offline Moderator
    Join Date
    Nov 2006
    Location
    UK
    Posts
    8,017
    Rep Power
    24

    Default

    I believe Mark is referring to the fact that he is able to tune each individual mailbox server based on its usage profile; not that it is fully tuned out of the box.

  10. #10
    LMStone's Avatar
    LMStone is offline Moderator
    Join Date
    Sep 2006
    Location
    477 Congress Street | Portland, ME 04101
    Posts
    1,367
    Rep Power
    10

    Default

    Quote Originally Posted by uxbod View Post
    I believe Mark is referring to the fact that he is able to tune each individual mailbox server based on its usage profile; not that it is fully tuned out of the box.
    Exactly!

    Zimbra's default MySQL settings are very good, but sometimes it is appropriate to increase for example the InnoDB buffer pool size on one mailbox server, but reduce it on another (to make more RAM available for Java).

    All the best,
    Mark

Page 1 of 2 12 LastLast

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. How to: cold standby server (no cluster)
    By fisch09 in forum Installation
    Replies: 50
    Last Post: 02-18-2014, 10:51 AM
  2. Zimbra fails after working for 2 weeks
    By Linsys in forum Administrators
    Replies: 10
    Last Post: 10-07-2008, 12:42 AM
  3. need advice on configuring zimbra to work with fax server
    By pheonix1t in forum Administrators
    Replies: 0
    Last Post: 07-11-2007, 07:46 PM
  4. Need separate server to handle mail that Zimbra doesn't
    By danfluidmind in forum Administrators
    Replies: 2
    Last Post: 06-02-2007, 11:37 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •