1. phpMyAdmin-2.7.0-pl2 -- Select file phpMyAdmin-2.7.0-pl2.zip
2. Install to : C:\www\phpMyAdmin
[note that phpMyAdmin will be placed outside of Apache's webroot]
-Apache's webroot : C:\www\webroot
-MySQL path : C:\www\mysql\bin
-Access phpMyAdmin as :
http://localhost/phpMyAdmin/
3. Install phpMyAdmin.
Unpack file phpMyAdmin-2.7.0-pl2.zip under directory C:\www
Rename directory C:\www\phpMyAdmin-2.7.0-pl2 to C:\www\phpMyAdmin
Edit phpMyAdmin's default configuration file C:\www\phpMyAdmin\config.default.php, putting all changes into new file 'config.inc.php'...
Insert full URL path to phpMyAdmin into line...
$cfg['PmaAbsoluteUri'] = '';
If access will only be performed from localhost, use
http://localhost/phpMyAdmin/
[note that double logins and browser errors will occur if user accesses URL 'http://127.0.0.1/phpMyAdmin/']
If access will be performed from other systems within a LAN, use
http://local.ip.address.of-system/phpMyAdmin/
phpMyAdmin can also try to auto-detect the proper value if this directive is left as it is (blank) and this line is changed to 'TRUE'...
$cfg['PmaAbsoluteUri_DisableWarning'] = FALSE;
Authentication Method -- for single-user (root or trusted) environment...
Method 1: Prompt client for MySQL user/password...
$cfg['Servers'][$i]['auth_type'] = 'http';
Method 2: Store MySQL user/password under config.ini.php...
$cfg['Servers'][$i]['auth_type'] = 'config';
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'root-password'; [Note password 'root-password'; substitute in set password for MySQL user 'root'; if no password set, leave as is (blank)]
Authentication Method -- for multi-user (untrusted) environment (this step is also required for enabling phpMyAdmin's relational features)...
$cfg['Servers'][$i]['auth_type'] = 'http';
$cfg['Servers'][$i]['user'] = '';
$cfg['Servers'][$i]['password'] = '';
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = 'pmapass'; [Note password 'pmapass']
Create MySQL controluser user 'pma@localhost' with password 'pmapass', with the proper permissions set...
C:\www\mysql\bin> mysql -u root -p
mysql> GRANT USAGE ON mysql.* TO 'pma'@'localhost' IDENTIFIED BY 'pmapass'; [Note password 'pmapass']
mysql> GRANT SELECT (Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv, Index_priv, Alter_priv, Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv, Execute_priv, Repl_slave_priv, Repl_client_priv) ON mysql.user TO 'pma'@'localhost'; [Note that this query is to large to be pasted into the mysql command line in its entirety; select half, copy/paste, press enter, copy/paste other half]
mysql> GRANT SELECT ON mysql.db TO 'pma'@'localhost';
mysql> GRANT SELECT ON mysql.host TO 'pma'@'localhost';
mysql> GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv) ON mysql.tables_priv TO 'pma'@'localhost';
mysql> quit
4. Configuration for Apache
Edit file C:\www\Apache2\conf\httpd.conf and uncomment line (remove the beginning character '#')...
LoadModule alias_module modules/mod_alias.so
Edit file C:\www\Apache2\conf\httpd.conf and make sure directive 'DirectoryIndex' contains 'index.php'...
DirectoryIndex index.html index.html.var index.php
Edit file C:\www\Apache2\conf\httpd.conf and add the following...
<IfModule mod_alias.c>
Alias /phpMyAdmin "C:/www/phpMyAdmin"
</IfModule>
<Directory "C:/www/phpMyAdmin">
Options None
AllowOverride None
order deny,allow
deny from all
allow from 127.0.0.1
</Directory>
[note that this configuration will only allow access to phpMyAdmin from the HOST system -- the system Apache is running from]
Restart Apache
5. Configuration for PHP
Note that this step is only required for PHP v5. Under PHP v4, PHP extension php_mysql.dll is build in and extension php_mysqli is not supported.
Edit file %SYSTEMROOT%\php.ini, under the 'Dynamic Extensions' Section...
Uncomment line ;extension=php_mbstring.dll
If using MySQL v4.0 : Uncomment line ;extension=php_mysql.dll
If using MySQL v4.1 : Insert line extension=php_mysqli.dll
Edit config.inc.php and update server extension line...
$cfg['Servers'][$i]['extension'] = 'mysqli';
6. [Optional] Enable phpMyAdmin's Relational Features
Note that this step requires "Authentication Method -- for multi-user (untrusted) environment"
Edit phpMyAdmin's configuration file C:\www\phpMyAdmin\config.inc.php
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
$cfg['Servers'][$i]['relation'] = 'pma_relation';
$cfg['Servers'][$i]['table_info'] = 'pma_table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma_column_info';
$cfg['Servers'][$i]['history'] = 'pma_history';
Run phpMyAdmin's sql script file 'create_tables.sql'...
C:\www\mysql\bin> mysql -u root -p
For MySQL v4.0.0+
mysql> source C:\www\phpMyAdmin\scripts\create_tables.sql
For MySQL v4.1.2+ (including v5)
mysql> source C:\www\phpMyAdmin\scripts\create_tables_mysql_4_1_ 2+.sql
mysql> quit
let me know if you run into any problem.
D-No-One