13.1.11 CREATE DATABASE Statement
CREATE {DATABASE | SCHEMA} db_name ...create_option: { CHARACTER SET charset_name | COLLATE collation_name}
CREATE DATABASE
erstellt eine Datenbank mit dem angegebenen Namen. Um diese Anweisung zu verwenden, benötigen Sie das CREATE
-Recht für die Datenbank. CREATE SCHEMA
ist ein Synonym für CREATE DATABASE
.
Ein Fehler tritt auf, wenn die Datenbank existiert und Sie IF NOT EXISTS
nicht angegeben haben.
CREATE DATABASE
ist innerhalb einer Sitzung mit einer aktiven LOCK TABLES
-Anweisung nicht zulässig.
Jedes create_option
gibt ein Datenbankmerkmal an. Die Datenbankmerkmale werden in der Datei db.opt
im Datenbankverzeichnis gespeichert. Die Option CHARACTER SET
gibt den Standardzeichensatz der Datenbank an. Die Option COLLATE
gibt die Standardsortierung der Datenbank an. Informationen zu Zeichensatz- und Kollationierungsnamen finden Sie in Kapitel 10, Zeichensätze, Kollationen, Unicode.
Um die verfügbaren Zeichensätze und Sortierungen anzuzeigen, verwenden Sie die Anweisungen SHOW CHARACTER SET
bzw. SHOW COLLATION
. Siehe Abschnitt 13.7.5.3, “SHOW CHARACTER SET Statement”, und Abschnitt 13.7.5.4, “SHOW COLLATION Statement”.
Eine Datenbank in MySQL ist als ein Verzeichnis implementiert, das Dateien enthält, die den Tabellen in der Datenbank entsprechen. Da eine Datenbank beim ersten Anlegen keine Tabellen enthält, erzeugt die Anweisung CREATE DATABASE
nur ein Verzeichnis unter dem MySQL-Datenverzeichnis und die Datei db.opt
. Regeln für zulässige Datenbanknamen sind in Abschnitt 9.2, “Schema Object Names”, angegeben. Wenn ein Datenbankname Sonderzeichen enthält, enthält der Name für das Datenbankverzeichnis kodierte Versionen dieser Zeichen, wie in Abschnitt 9.2.4, “Zuordnung von Bezeichnern zu Dateinamen”, beschrieben.
Wenn Sie manuell ein Verzeichnis unter dem Datenverzeichnis erstellen (z. B. mit mkdir), betrachtet der Server es als Datenbankverzeichnis und es wird in der Ausgabe von SHOW DATABASES
angezeigt.
Wenn Sie eine Datenbank erstellen, lassen Sie den Server das Verzeichnis und die Dateien darin verwalten. Das direkte Manipulieren von Datenbankverzeichnissen und -dateien kann zu Inkonsistenzen und unerwarteten Ergebnissen führen.
MySQL hat keine Begrenzung für die Anzahl der Datenbanken. Das zugrundeliegende Dateisystem kann eine Begrenzung für die Anzahl der Verzeichnisse haben.
Sie können auch das Programm mysqladmin verwenden, um Datenbanken zu erstellen. Siehe Abschnitt 4.5.2, “mysqladmin – Ein Verwaltungsprogramm für den MySQL-Server”.