Midgard

flack edited this page Feb 1, 2015 · 1 revision

Midgard is an Open Source persistent storage framework available under the LGPL for Linux and Mac OS X. It operates on a database backend and provides an object-oriented access to its storage in mutliple programming languages. It is suitable for desktop and web applications and provides features like D-Bus-based signals and replication.

The Midgard Core handles all database operations as well as other fundamentals like authentication and replication.

toc

Development

Midgard Concepts and Features like MgdSchema technology, Query Builder and Midgard Collector are available to developers in the form of Midgard APIs for PHP, Java, Python and Ruby.

Currently, midgard-php is the most heavily-used language binding, which provides the foundation for the MidCOM CMS Framework. MidCOM Component developers should use Midgard functionality only indirectly through the MidCOM Framework, where MidCOM ACL and other additional features are added.

Midgard Constants

Midgard PHP Superglobals

Command-Line Tools

Datagard - used for database setup, updates and legacy applications installation

midgard-config

midgard-owner

midgard-pageresolve

midgard-preparse

midgard-query

midgard-schema

midgard-snippet

Installation

For current Midgard versions, packages exist for SuSE, Fedora and Debian via Suse's Open Build Service (OBS). Source installation is partly automated and involves ./configure-ing, make-ing and make install-ing the different parts of the system. After that, a MySQL-Database for Midgard can be created via Datagard. When Apache is correctly configured and restarted, Midgard should run and a new Host can be created in the browser using Midgard Site Wizard. See Midgard Installation for more details.

Dependencies

For Midgard 1, Apache 2.x (MPM Prefork) is required. As of version 1.8, MySQL versions starting from 4.1 can be used as a database backend. Midgard 2 supports other RDBMs as well through the use of libgda and does not required any specific web server.

Configuration

Midgard uses per-database configuration files usually located in /etc/midgard/conf.d/DB_NAME. Furthermore, each Midgard-powered Apache virtual host needs specific Midgard directives in it. Both are usually generated when setting up a new database with Datagard. The virtual host configuration files are loaded from a very short config files which is included from Apache's main config file.

See also Troubleshooting for typical installation issues.

Setup

Midgard Apache Directives

Version History

8.09

1.8

1.7

1.6

1.5

Packaging

Midgard consists of

Note: the package names might be different for older versions. In some versions, the MidCOM Framework and some of it's Components were included, nowadays they are installed via PEAR automatically during installation.

Weblinks

Main Midgard CMF site: http://www.midgard-project.org/

Developer services: http://trac.midgard-project.org/

Presentation on Midgard2: http://www.slideshare.net/bergie/midgard-2-the-cloud-you-can-control-presentation

Category:Midgard