Midgard

From OpenPSA Wiki

Jump to: navigation, search
Midgard logo

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.

Contents


[edit] 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

[edit] 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

[edit] 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.

[edit] 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.

[edit] 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.

[edit] Setup

Midgard Apache Directives

[edit] Version History

8.09
1.8
1.7
1.6
1.5

[edit] 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.

[edit] 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
Personal tools