Start Knowledge Base Linux MySQL auf der Kommandozeile

MySQL auf der Kommandozeile

Aus der Kategorie: Linux
Freitag, 04. Juni 2010 (Zuletzt aktualisiert am Mittwoch, 16. Juni 2010)

MySQLDiese Anleitung beschreibt das Vorgehen beim Anlegen einer neuen MySQL Datenbank, eines Benutzers und Tabellen. Das ganze natürlich auf der Kommandozeile (z.B. mit Putty) und nicht mittels phpMyAdmin oder MySQL Administrator.

 

Einleitung

Um dieser Anleitung folgen zu können benötigen benötigen Sie folgendes:

  • Linux Server mit SSH Zugang
  • MySQL Server
Nach Oben

Anmeldung

Als erstes müssen Sie sich als Datenbankbenutzer anmelden, in der Regel wird dies der Benutzer "root" sein.

mysql -u root -p

Nach diesem Befehl werden Sie nach dem Passwort für den Benutzer root gefragt. Geben Sie es ein.

Nach Oben

Datenbank anlegen

Als authentifizierter Benutzer, mit den entsprechenden Rechten, können Sie jetzt eine neue Datenbank anlegen.

<db_name> muss durch Ihren gewünschten Datenbanknamen ersetzt werden.

mysql> CREATE DATABASE <db_name>;

Um zu prüfen ob die Datenbank existiert muss man nur folgenden Befehl ausführen:

show databases;

Die Datenbank müsste dann in der Auflistung vorkommen.

Nach Oben

Tabellen anlegen

Um eine Tabelle anlegen zu können, sollten Sie zuerst eine Datenbank wählen.

mysql> use <db_name>;

Daraufhin verwenden Sie folgenden Befehl. Ersetzen Sie <tbl_name> gegen Ihren gewünschten Tabellennamen.

CREATE TABLE `<tbl_name>` (
`id` int(11) NOT NULL AUTO_INCREMENT
PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=1

Dieser Befehl hat die Tabelle <tbl_name> angelegt und gleichzeitig die Spalte id angelegt. Außerdem wurden der Spalte id noch spezielle Eigenschaften zugewiesen, damit die Spalte als Primary Key genutzt werden kann.

Nach Oben

Benuzter anlegen

1. Benutzer anlegen:

mysql> CREATE USER '<benutzername>'@'localhost';

2. Passwort setzen:

mysql> UPDATE mysql.user SET password = PASSWORD('<passwort>') WHERE user = '<benutzername>';

Folgender Befehl listet alle Benutzer auf:

select user from mysql.user;

Nach Oben

Rechte anlegen

Folgende Befehle weisen einem Benutzer verschiedene Rechte zu.

Minimale Leserechte:

GRANT SELECT ON <db_name>.* TO  '<benutzername>'@'localhost';

Gewönliche Rechte:

GRANT SELECT, INSERT, UPDATE, DELETE ON <db_name>.* TO '<benutzername>'@'localhost';

Oder alle Rechte:

GRANT ALL ON <db_name>.* TO '<benutzername>'@'localhost';

Wichtig, folgender Befehl aktualisiert die zwischengespeicherten Rechte und Privilegien:

flush privileges;

Rechte für einen Benutzer anzeigen

SHOW GRANTS FOR '<benutzername>'@'localhost';