NAME

CGI::Wiki::Setup::MySQL - Set up tables for a CGI::Wiki store in a MySQL database.

SYNOPSIS

use CGI::Wiki::Setup::MySQL;
CGI::Wiki::Setup::MySQL::setup($dbname, $dbuser, $dbpass, $dbhost);

Omit $dbhost if the database is local.

DESCRIPTION

Set up a MySQL database for use as a CGI::Wiki store.

FUNCIONS

setup
use CGI::Wiki::Setup::MySQL;
CGI::Wiki::Setup::MySQL::setup($dbname, $dbuser, $dbpass, $dbhost);

Takes three mandatory arguments -- the database name, the username and the password. The username must be able to create and drop tables in the database.

The $dbhost argument is optional -- omit it if the database is local.

NOTE: If a table that the module wants to create already exists, setup will leave it alone. This means that you can safely run this on an existing CGI::Wiki database to bring the schema up to date with the current CGI::Wiki version. If you wish to completely start again with a fresh database, run cleardb first.

cleardb
use CGI::Wiki::Setup::MySQL;

# Clear out the old database completely, then set up tables afresh.
CGI::Wiki::Setup::MySQL::cleardb($dbname, $dbuser, $dbpass, $dbhost);
CGI::Wiki::Setup::MySQL::setup($dbname, $dbuser, $dbpass, $dbhost);

Takes three mandatory arguments -- the database name, the username and the password. The username must be able to drop tables in the database.

The $dbhost argument is optional -- omit if the database is local.

Clears out all CGI::Wiki store tables from the database. NOTE that this will lose all your data; you probably only want to use this for testing purposes or if you really screwed up somewhere. Note also that it doesn't touch any CGI::Wiki search backend tables; if you have any of those in the same or a different database see either CGI::Wiki::Setup::DBIxFTS or CGI::Wiki::Setup::SII, depending on which search backend you're using.

ALTERNATIVE CALLING SYNTAX

As requested by Podmaster. Instead of passing arguments to the methods as

($dbname, $dbuser, $dbpass, $dbhost)

you can pass them as

( { dbname => $dbname,
    dbuser => $dbuser,
    dbpass => $dbpass,
    dbhost => $dbhost
  }
)

Note that's a hashref, not a hash.

AUTHOR

Kake Pugh (kake@earth.li).

COPYRIGHT

Copyright (C) 2002-2003 Kake Pugh.  All Rights Reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

CGI::Wiki, CGI::Wiki::Setup::DBIxMySQL, CGI::Wiki::Setup::SII