phpMyAdmin
Beschreibung: Erklärt phpMyAdmin in seinen Grundzügen und technische Einrichtung
Kategorie: Server, PHP und MySQL
Link zu diesem Artikel: Alles auswählen
[url=https://www.phpbb.de/kb/viewarticle?a=90]Knowledge Base - phpMyAdmin[/url]
phpMyAdmin ist ein Datenbankverwaltungsprogram. Mehr dazu im MySQL Artikel
Hinweise zu Bedienung finden sich im Artikel Umgang mit phpMyAdmin
- Download
Auf www.phpMyAdmin.net kann man die neueste Version herunterladen. (Mirror: sourceforge.net) - Package entpacken
Darauf achten, das die Dateien in ihren bestehenden Unterverzeichnissen entpackt werden und am besten das Hauptverzeichnis umbenennen (z.B. in db_tool) - Voreinstellungen
in der config.inc.php Zugangsdaten eingebenCode: Alles auswählen
$cfg['Servers'][$i]['host'] = 'localhost'; // Hostname der Datenbank $cfg['Servers'][$i]['user'] = ''; // Username der Datenbank $cfg['Servers'][$i]['password'] = ''; // Passwort der Datenbank $cfg['Servers'][$i]['only_db'] = ''; // Name der Datenbank, wenn mehrere Datenbanken mit gleichen Zugangsdaten hier nichts eintragen
- Upload und..
Den Ordner db_tool/ anschließend auf den Server laden und phpmyadmin aufrufen (z.B. http://www.domain.de/db_tool/).
Eventuell wird eine rote Fehlermeldung (The $cfg['PmaAbsoluteUri'] directive MUST be set in your configuration file!) angezeigt- überprüfen ob man die Tabellen, Datenbank auswählen kann
wenn alles funktioniert, kann man in der config.inc.php diese Fehlermeldung deaktivieren (FALSE mit TRUE ersetzen):Code: Alles auswählen
$cfg['PmaAbsoluteUri_DisableWarning'] = false;
- ansonsten muss man in der config.inc.php den Pfad zu phpMyAdmin angeben
Code: Alles auswählen
$cfg['PmaAbsoluteUri'] = 'http://domain.de/db_tool/';
- überprüfen ob man die Tabellen, Datenbank auswählen kann
- Sicherheit
(siehe auch .htaccess-Anleitung (Verzeichnisschutz) )
- Datei mit dem Namen .htaccess und folgendem Inhalt erstellen:
Code: Alles auswählen
AuthType Basic AuthName "Restricted Directory" AuthUserFile /home/www/whatever/html/db_tool/.htpasswd require valid-user
- der Pfad ( /home/www/whatever/html/db_tool/ ) muss angepasst werden; wenn man den Pfad nicht kennt, kann man folgenden Code in einer pfad.php abspeichern, ins phpMyAdmin-Verzeichnis hochladen und ausführen:
Code: Alles auswählen
<?php echo "der absolute Pfad lautet: <b>". dirname(__FILE__) ."</b>"; ?>
- nun erstellt man eine Datei namens .htpasswd, mit folgendem Inhalt (blau ist Username/rot ist das Passwort)name:2d.JddK0g5454Tls
- um einen verschlüsselten Passwort Check zu generieren: Link (Inhalt in die .htpasswd kopieren)
- beide Dateien ins phpMyAdmin-Verzeichnis uploaden
- Datei mit dem Namen .htaccess und folgendem Inhalt erstellen:
- sql-Anweisungen ausführen
(siehe auch Backup mit phpMyAdmin )- eventuell Datenbank vorher auswählen
- auf irgendeinen Tabellennamen im linken Frame oder auf "SQL" im rechten Frame klicken
- im rechten Frame sieht man dann eine grosses Textfenster ("Querybox"), eventuell muss man ein wenig herunterscrollen
- die sql-Anweisungen (Queries) in die Querybox kopieren (der Text, der vorher in der Querybox zu sehen war, verschwindet automatisch, was in Ordnung ist)
- auf Go! (oder Ok-) Button klicken (man sieht dann ob man erfolgreich war)
(Dies ist aber nicht zwingend notwendig; phpMyAdmin funktioniert auch ohne diese Einstellungen.)
Code: Alles auswählen
//Name der Datenbank eintragen; bei mehreren Datenbank nur einen Namen eintragen
$cfg['Servers'][$i]['pmadb'] = '';
$cfg['Servers'][$i]['relation'] = 'pma_relation';
CREATE TABLE `pma_relation` (
`master_db` varchar(64) NOT NULL default '',
`master_table` varchar(64) NOT NULL default '',
`master_field` varchar(64) NOT NULL default '',
`foreign_db` varchar(64) NOT NULL default '',
`foreign_table` varchar(64) NOT NULL default '',
`foreign_field` varchar(64) NOT NULL default '',
PRIMARY KEY (`master_db`, `master_table`, `master_field`),
KEY foreign_field (foreign_db, foreign_table)
) TYPE=MyISAM COMMENT='Relation table';
$cfg['Servers'][$i]['table_info'] = 'pma_table_info';
CREATE TABLE `pma_table_info` (
`db_name` varchar(64) NOT NULL default '',
`table_name` varchar(64) NOT NULL default '',
`display_field` varchar(64) NOT NULL default '',
PRIMARY KEY (`db_name`, `table_name`)
) TYPE=MyISAM COMMENT='Table information for phpMyAdmin';
$cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
CREATE TABLE `pma_table_coords` (
`db_name` varchar(64) NOT NULL default '',
`table_name` varchar(64) NOT NULL default '',
`pdf_page_number` int NOT NULL default '0',
`x` float unsigned NOT NULL default '0',
`y` float unsigned NOT NULL default '0',
PRIMARY KEY (`db_name`, `table_name`, `pdf_page_number`)
) TYPE=MyISAM COMMENT='Table coordinates for phpMyAdmin PDF output';
$cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
CREATE TABLE `pma_pdf_pages` (
`db_name` varchar(64) NOT NULL default '',
`page_nr` int(10) unsigned NOT NULL auto_increment,
`page_descr` varchar(50) NOT NULL default '',
PRIMARY KEY (page_nr),
KEY (db_name)
) TYPE=MyISAM COMMENT='PDF Relationpages for PMA';
$cfg['Servers'][$i]['column_info'] = 'pma_column_info';
CREATE TABLE `pma_column_info` (
`id` int(5) unsigned NOT NULL auto_increment,
`db_name` varchar(64) NOT NULL default '',
`table_name` varchar(64) NOT NULL default '',
`column_name` varchar(64) NOT NULL default '',
`comment` varchar(255) NOT NULL default '',
`mimetype` varchar(255) NOT NULL default '',
`transformation` varchar(255) NOT NULL default '',
`transformation_options` varchar(255) NOT NULL default '',
PRIMARY KEY (id),
UNIQUE KEY db_name (db_name, table_name, column_name)
) TYPE=MyISAM COMMENT='Comments for Columns';
$cfg['Servers'][$i]['history'] = 'pma_history';
CREATE TABLE `pma_history` (
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
`username` VARCHAR( 64 ) NOT NULL ,
`db` VARCHAR( 64 ) NOT NULL ,
`table` VARCHAR( 64 ) NOT NULL ,
`timevalue` TIMESTAMP NOT NULL ,
`sqlquery` TEXT NOT NULL ,
PRIMARY KEY ( `id` ) ,
INDEX ( `username` , `db` , `table` , `timevalue` )
) TYPE=MyISAM COMMENT='SQL history';