Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Note
title*DBMS Recommendation

Note: as of Bedework 3.7, PostgreSQL is the preferred database system used by Bedework.
While MySQL is fully supported, there is a long-standing bug in MySQL that can lead to performance issues in Bedework.

Create

...

databases; check the character set

Create five databases , one for the Calendar server, the Timezone server, the Synchronization engine, the CardDAV server, and the Event Registration system.

Name them something like: bedework3p10 bedework_cal, b edework3p10_tz, bedework3p10_bedework_synch, bedework3p10bedework_card, bedework3p10bedework_reg
Provide full access rights to an appropriately named user such as bedework.

...

Info
title In Postgres the Bedework databases might look like this:
# \list
                                     List of databases
       Name       |  Owner   | Encoding |  Collation  |    Ctype    |   Access privileges
------------------+----------+----------+-------------+-------------+-----------------------
 bedework3p10 bedework_cal     | bedework | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =Tc/bedework
                                                                    : bedework=CTc/bedework
 bedework3p10 bedework_card    | bedework | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =Tc/bedework
                                                                    : bedework=CTc/bedework
 bedework3p10 bedework_reg     | bedework | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =Tc/bedework
                                                                    : bedework=CTc/bedework
 bedework3p10_synch| bedework | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =Tc/bedework
                                                                    : bedework=CTc/bedework
 bedework3p10_tz   bedework_synch   | bedework | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =Tc/bedework
                                                                    : bedework=CTc/bedework

...

Unsupported databases

Because we use Hibernate, we don’t support databases they don’t support.  While Hibernate should make it possible to run Bedework on any Hibernate-supported database, in reality, there are problems with some systems that may require hand-editing of the schema.  We expect in time to discover a workable solution to such problems.

...

  • MS SQL Server: Partially supported but requires at least hand-editing of the schema. Has not been tried with 3.3.1 onwards. At least one problem remains, Sql Server does not follow the ANSI standard for unique indexes in that null=null for Sql Server but null is never equal to null in ANSI standard databases. This breaks some of the unique indexes in Bedework.MySQL version 4: Has problems in a number of areas. These are unlikely to ever be resolved. Version 4 is now old.

Developer notes

There are no checks that the application, e.g  the calendar, has the same settings as the database. Databases will interpret the byte stream according to their configuration even if that does not match the configuration of the calendar server. Care in matching up all the components is critical. Those components are at least:

...