====== MySQL/MariaDB ======
Informationen und Links zu [[http://www.mysql.de/|MySQL]] bzw. [[https://mariadb.org/|MariaDB]] Installationen der Fakultät IM.
===== Verbindungsinformationen =====
MySQL/MariaDB ist sowohl zentral auf den Datenbankservern Zeus / Hera (''%%zeus.hs-regensburg.de%%'', ''%%hera.hs-regensburg.de%%'') als auch lokal jedem Labor-PC für die Mitglieder der Fakultät IM verfügbar.
==== MySQL/MariaDB Server auf Zeus/Hera ====
|**Benutzername** |//abc12345// |wie RZ-Account |
|**Passwort** |aktuelles MySQL/MariaDB Passwort |Das aktuelle Passwort ist unabhängig von anderen Hochschulpasswörtern. Das Initialpasswort ist gleich dem Benutzernamen und sollte geändert werden. → siehe [[#Passwort_ändern|#Passwort ändern]]|
|**Datenbank** |//abc12345// |Außer bei bestimmten Projekten, ist der Name der Datenbank gleich dem Benutzernamen. |
|**Host** |''%%localhost%%'' |für PHP-Webseiten auf dem Server selbst |
|::: |''%%zeus.hs-regensburg.de%%''\\ ''%%hera.hs-regensburg.de%%''|über Netzwerk, von anderen Computern aus |
|**Port** |''%%3306%%'' |Standardport |
Weitere Informationen:
* Zumindest eine der zentralen MySQL/MariaDB Datenbanken ist für jeden PC im Campus-LAN oder per ständig verfügbar.
* Jeder Benutzer hat eine eigene Datenbank auf jedem Server.
* PHP-Webseiten auf den Servern Zeus / Hera sollten auf die jeweilige Benutzer-Datenbank zugreifen.
* Die Benutzer-Datenbanken werden täglich gesichert.
**Serververfügbarkeit und Datenbankversion:**
* Die Server bieten normal unterschiedliche Datenbankversionen: älter/neuer und MySQL/MariaDB.
* In einem Semester sind nicht unbedingt beide Server/Datenbanken gleichzeitig online und verfügbar.
* Welcher Server bzw. Datenbank benutzt werden kann, erfahren sie ggf. von ihrem Dozenten oder einem [[public:service_und_support|IM-Mitarbeiter]].
==== Lokaler MySQL/MariaDB Server ====
|**Benutzername**|''%%root%%'' |
|**Passwort** |''%%mysql%%'' |
|**Datenbank** |''%%mysql%%'' oder ''%%test%%''|
|**Host** |''%%localhost%%'' |
|**Port** |''%%3306%%'' |
Weitere Informationen:
* Die lokale MySQL/MariaDB Datenbank läuft nur auf dem jeweiligen Pool/Labor-PC.
* Die Daten, die dort gespeichert werden befinden sich nur lokal auf dem jeweiligen PC.
* Die Datenbank läuft nicht automatisch und muss vom Benutzer erst gestartet werden (Startmenü).
* Der Zugriff über Netzwerk ist nicht möglich.
* Dafür ist das Arbeiten mit Administratorrechten (''%%root%%'') möglich.
**Wichtige Hinweise:**
* Von den Daten in der lokalen Datenbank wird keine Sicherung durchgeführt.
* Die Datenbank kann jederzeit (auch von anderen Benutzern) genutzt und gelöscht werden.
* Speichern sie deshalb keine sensiblen Daten, die nicht von anderen Benutzern eingesehen werden dürfen.
==== Start des lokalen Servers ====
Auf den Pool/Labor-PCs wird der lokale MySQL/MariaDB Server unter Windows über das Startmenü gestartet:
Start → Programme → Datenbank → MySQL → MySQL-Server
Der Server läuft dann als Systemdienst auf Port ''%%3306%%''.
===== Zugriff auf die MySQL/MariaDB Datenbank =====
==== Unter Linux ====
Verbindung zu einem Datenbankserver Zeus / Hera mit einem Commandline-Client:
mysql -h -p -u
mysql -h zeus.hs-regensburg.de -p -u abc12345 abc12345
mysql -h hera.hs-regensburg.de -p -u abc12345 abc12345
Benutzername und Passwort werden entsprechend der [[#Verbindungsinformationen]] angegeben.
==== Unter Windows ====
Unter Windows kann als Client für die Datenbank der MySQL-Querybrowser benutzt werden. Dieser wird auf den Pool/Labor-PCs folgendermassen aufgerufen:
Start → Programme → Datenbank → MySQL → MySQL-Querybrowser
Benutzername und Passwort werden entsprechend der [[#Verbindungsinformationen]] angegeben.
Die MySQL-Commandline-Tools sind auf den Pool/Labor-PCs ebenfalls verfügbar. Verbindung zur ''%%test%%''-Datenbank auf dem lokalen MySQL/MariaDB Server:
mysql.exe -h localhost -uroot -pmysql test
Alternative grafischer MySQL/MariaDB Client wären z.B. [[http://www.heidisql.com/|HeidiSQL]] oder [[https://dbeaver.io/|DBeaver]].
==== Mit PHP ====
Auf den Servern Zeus / Hera mit MySQL/MariaDB Datenbank ist auch der [[http://httpd.apache.org/|Apache-Webserver]] mit [[http://www.php.net/|PHP]] installiert. Der Web-Zugriff auf die Datenbank via PHP ist deshalb ebenfalls möglich. Dazu muss ein entsprechendes Skript im Unterverzeichnis ''%%public_html%%'' des Linux Home-Verzeichnisses abgelegt werden. Das Skript wird (entsprechende Berechtigungen vorausgesetzt) vom Server bei Aufrufen via Webbrowser ausgeführt.
**Beispielskript**
";
$pass = "";
$link = mysqli_connect("localhost", $user, $pass, $user);
/* check connection */
if (!$link) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
printf("Host information: %s
\n", mysqli_get_host_info($link));
$query = "show databases;";
$result = mysqli_query($link, $query);
/* numeric array */
$row = mysqli_fetch_array($result, MYSQLI_NUM);
printf("s)
\n", $row[0], $row[1]);
/* associative and numeric array */
$row = mysqli_fetch_array($result, MYSQLI_BOTH);
printf("s)\n", $row['id'], $row['test']);
/* free result set */
mysqli_free_result($result);
/* close connection */
mysqli_close($link);
Benutzername und Passwort werden entsprechend der [[#Verbindungsinformationen]] für den MySQL/MariaDB Server auf Zeus / Hera angegeben.
===== Passwort ändern =====
Standarmäßig sollte man auch sein Passwort ändern. Allgemein wird das eigene MySQL/MariaDB Passwort nach dem Login mit folgendem SQL-Befehl geändert:
mysql> set password = password("");
===== Siehe auch =====
* [[public:FAQ_Linux|FAQ Linux]]
* [[public:accounts|Accounts]]
* [[oracle|Oracle-Datenbank]]
* [[public:postgres|Postgres-Datenbank]]
* [[public:fbim-server|FBIM-Server]]
===== Weblinks =====
* [[http://dev.mysql.com/doc/|Dokumentation]] von MySQL
* [[https://mariadb.com/kb/en/documentation/|Dokumentation]] von MariaDB
* [[http://www.mysql.de/|MySQL-Homepage]]
* [[https://mariadb.org/|MariaDB-Homepage]]
* [[http://httpd.apache.org/|Apache-Webserver]]
* [[http://www.php.net/|PHP-Homepage]]
* [[http://www.heidisql.com/|HeidiSQL]]