Auf Theseus sollte dann folgendes Skript aufgerufen werden mit einem noch nicht existierenden Verzeichnis:
/usr/local/mysql-scripts/installdb <Zielverzeichnis>
Bitte den absoluten Pfad des Zielverzeichnisses angeben!
Das installdb-Skript richtet das angegebene Verzeichnis mitsamt einem Unterverzeichnis namens bin ein, das einige Skripte zur Administration Ihrer Datenbank enthält:
Skript | Beschreibung |
---|---|
admin_project | Eröffnet eine Datenbank-Sitzung, bei der Sie auf Ihrer Projekt-Datenbank arbeiten können. |
admin_mysql | Analog zu admin_project -- nur arbeiten Sie hier mit den Systemtabellen. |
createdb | Erzeugt eine neue Datenbank für Sie. Passen Sie bitte zuerst createtables Ihren Bedürfnissen an. |
createtables | Enthält die Definition Ihrer Tabellen. Bitte von Hand anpassen. |
grant | Erlaubt anderen Benutzer den Zugriff auf Ihre DB. Sie sollten bei Bedarf grant für Ihre Teammitglieder und/oder Ihren Tutor aufrufen. |
reloaddb | Lädt die Tabellen neu. |
startdb | Startet den MySQL-Server für Ihre Datenbank. Die bestehenden Tabellen werden nicht verändert. |
stopdb | Beendet den MySQL-Server. Die bestehenden Tabellen werden nicht verändert. Sie können den Server jederzeit mit startdb wieder starten. |
zapdb | Beendet den Server und löscht alle Tabellen. Ihre Daten gehen verloren. |
#!/usr/local/bin/perl -w use Getopt::Std; use DBI; use Mysql::Admin qw(dbi_connect); use strict; my $cmdname = $0; $cmdname =~ s{.*/}{}; my $usage = "Usage: $cmdname [-d delim] dbdir table\n"; my %opts = (); getopts('d:', \%opts); my $delim = ' '; $delim = $opts{'d'} if defined($opts{'d'}); die $usage unless @ARGV == 2; my $dbdir = shift; my $table = shift; my $db = DBI->connect(dbi_connect($dbdir), "", ""); die "$cmdname: unable to connect to db: $DBI::errstr\n" unless defined $db; $db->{RaiseError} = 1; my $st = $db->prepare("select * from $table"); $st->execute(); my $record; while (defined($record = $st->fetch())) { print join($delim, @{$record}), "\n"; } $st->finish; $db->disconnect;