PHPMyadmin, administering MySQL via web

What is PHPMyadmin

PHPMyAdmin is n visual system for the management of a MySQL database. It is written in PHP and serves to display the contents of the databases on the server (or client) on which MySQL is installed. Through this interface you can create new databases, modify existing ones and modify the contents of single fields (see Figure 11-1).

Figure 11-1. PHPMyAdmin start screen

PHPMyAdmin start screen

How to install the PHP-Nuke DB with PHPMyadmin

Please read first the Section called How to install the DB of PHP-Nuke with PHPMyadmin in Chapter 5 for the basic installation procedure of the PHP-Nuke MySQL database through PHPMyAdmin. In this section we will discuss some more advanced PHPMyAdmin topics:

PHPMyAdmin gives you also the possibility to do a backup of the data in your database (or only of the structure). If you choose "Structure Only and the "Send" option, you will save on your PC the database structure without the data. Choosing "Structure and Data" instead, you will be sent a real whole backup of your DB.

Other options of PHPMyAdmin

Yet another couple of instructions: In order to see the structure of a table, you only need to click on the one that is marked in the left bar and you will see all its fields and modification options appear in the central part (Figure 11-2).

Figure 11-2. PHPMyAdmin: table forum_topics

PHPMyAdmin: table forum_topics

ATTENTION!

The DROP command eliminates all the contents of the DB, the table or the single field, use it with caution.

Generally, the management interface of PHPMyAdmin is supplied by the provider who sells you the hosting or, if you install it on Windows in order to work locally, does not need any particular tweaking in its configuration.

In case you want to install it on Windows in order to read databases that are online or to install it on your webspace because your hosting supplier does not include it in your tools, you can configure everything by editing the config.inc.php file as follows:

Supposing that:

  • IP DB Server: 156.123.22.34

  • User: Pippo

  • Password: Topolino

  • Database Name: Minnie

Then:

$cfgServers[1]["host"] = "156.123.22.34"; // MySQL hostname
$cfgServers[1]["port"] = ""; // MySQL port - leave blank for default port
$cfgServers[1]["adv_auth"] = false; // Use advanced authentication?
$cfgServers[1]["stduser"] = ""; // MySQL standard user (only needed with advanced auth)
$cfgServers[1]["stdpass"] = ""; // MySQL standard password (only needed with advanced auth)
$cfgServers[1]["user"] = "Pippo"; // MySQL user (only needed with basic auth)
$cfgServers[1]["password"] = "Topolino"; // MySQL password (only needed with basic auth)
$cfgServers[1]["only_db"] = "Minnie"; // If set to a db-name, only this db is accessible
$cfgServers[1]["verbose"] = ""; // Verbose name for this host - leave blank to show the hostname
$cfgServers[1]["bookmarkdb"] = ""; // Bookmark db - leave blank for no bookmark support
$cfgServers[1]["bookmarktable"] = ""; // Bookmark table - leave blank for no bookmark support

In the config.inc.php you will find more configuration parameters that are repeated. They serve to manage DBs in various hosts with the same interface.