Benutzeranmeldung mit Passwort:
mysql -u Ivonne -p
Passwort für Ivonne ändern:
mysql> SET PASSWORD FOR 'IVONNE'@'LOCALHOST" = PASSWORD('new_password');
Rechte auf Datenbank für Ivonne mit Passwortauthentifizierung:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'Ivonne'@'%' IDENTIFIED BY 'hier das Passwort eingeben' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
mysql> exit

Datenbank (Schema) anlegen:
CREATE DATABASE horst;

Datenbank auswählen:
USE horst;

Tabelle anlegen:
CREATE TABLE blub ( id MEDIUMINT NOT NULL AUTO_INCREMENT, name VARCHAR(45) NOT NULL, PRIMARY KEY (id) );

Tabelle mit Daten füllen:
INSERT INTO blub (name) VALUES ('Peter'),('Klaus'),('Herbert'),('Erwin');

Spalte in Tabelle hinzufügen:
ALTER TABLE blub ADD nachname VARCHAR(45);

Spaltenname ändern:
ALTER TABLE blub CHANGE name vorname VARCHAR(45);

Wert in Zelle ändern:
UPDATE blub SET name='Frank' WHERE id=3;

Zeile in Tabelle hinzufügen:
INSERT blub SET vorname='Hans', nachname = 'Müller';

Zeile in Tabelle löschen:
DELETE FROM blub WHERE id=4;

Spalte in Tabelle löschen:
ALTER TABLE blub DROP vorname;

Spaltennamen auflisten:
show columns FROM horst.blub;
+---------------+--------------------+-------+-----+-----------+-----------------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+--------------------+-------+-----+-----------+-----------------------+
| id | mediumint(9) | NO | PRI | NULL | auto_increment |
| vorname | varchar(45) | YES | | NULL | |
| nachname | varchar(45) | YES | | NULL | |
+--------------+---------------------+-------+-----+-----------+-----------------------+

Anzahl der Spalten ausgeben:
SELECT COUNT( * ) FROM information_schema.COLUMNS WHERE table_schema = 'horst' AND TABLE_NAME = 'blub';

Anzahl der Zeilen ausgeben:
SELECT count (*) FROM horst.blub;

Für eine zentrale Konfigurationsverwaltung wurde ein zusätzliches Verzeichnis /etc/mysql bzw. /etc/mysql/conf.d angelegt. Der Symlink /etc/mysql/my.cnf -> /etc/my.cnf bedingt eine Weiterleitung auf die vom System vorgegebene Datei. Damit die zusätzliche angelegten Konfigurationsdateien unter /etc/mysql/conf.d mit einbezogen werden, wurde ein zusätzlicher Eintrag in /etc/my.cnf vorgenommen: ? /etc/my.cnf [...] # includes !includedir /etc/mysql/conf.d [...] ? /etc/mysql/conf.d/memory.cnf MySQL in der Version 5.0 hat eine vordefinierte Speicherbelegung von 64MB - wenn überhaupt. Da dies zu einer langsam Verarbeitung von Abfragen kommen kann, wurde MySQL mehr Speicher - 1GB max - zugesprochen. Weiteres Tuning erfolgt durch die Vergrößerung der InnoDB-Logfiles. [mysqld] max_allowed_packet = 16M key_buffer = 32M sort_buffer_size = 16M join_buffer_size = 16M net_buffer_length = 128K read_buffer_size = 256K read_rnd_buffer_size = 512K myisam_sort_buffer_size = 8M tmp_table_size = 32M query_cache_limit = 2M query_cache_size = 128M table_cache = 1000 max_connections = 250 innodb_buffer_pool_size = 1024M innodb_additional_mem_pool_size = 128M innodb_thread_concurrency = 8 # Set .._log_file_size to 25 % of buffer pool size innodb_log_file_size = 256M innodb_log_buffer_size = 32M ? /etc/mysql/conf.d/storage-engine.cnf Für neue Datenbanken bitte InnoDB benutzen. Danke! [mysqld] default-storage-engine = InnoDB ? /etc/mysql/conf.d/thread-concurrency.cnf Unser Server hat mehr als nur eine CPU und MySQL darf diese auch alle nutzen. Faustregel hierbei: CPUs * 2 [mysqld] # Try number of CPU's*2 for thread_concurrency thread_concurrency=4