phpMyAdmin 3.3.1 Documentation
* Top
* Requirements
* Introduction
* Installation
* Setup script
* Configuration
* Transformations
* FAQ
* Developers
* Copyright
* Credits
* Translators
* Glossary
* phpMyAdmin homepage
* SourceForge phpMyAdmin project page
* Official phpMyAdmin wiki
* Local documents:
+ Version history: ChangeLog
+ License: LICENSE
* Documentation version:
$Id$
Requirements
* PHP
+ You need PHP 5.2.0 or newer, with session support (see FAQ 1.31) and
the Standard PHP Library (SPL) extension.
+ To support uploading of ZIP files, you need the PHP zip extension.
+ For proper support of multibyte strings (eg. UTF-8, which is currently
default), you should install mbstring and ctype extensions.
+ You need GD2 support in PHP to display inline thumbnails of JPEGs
("image/jpeg: inline") with their original aspect ratio
+ When using the "cookie" authentication method, the mcrypt extension is
strongly suggested for most users and is required for 64?bit machines.
Not using mcrypt will cause phpMyAdmin to load pages significantly
slower.
+ To support upload progress bars, see FAQ 2.9.
* MySQL 5.0 or newer (details);
* Web browser with cookies enabled.
Introduction
phpMyAdmin can manage a whole MySQL server (needs a super-user) as well as a
single database. To accomplish the latter you'll need a properly set up MySQL
user who can read/write only the desired database. It's up to you to look up
the appropriate part in the MySQL manual.
Currently phpMyAdmin can:
* browse and drop databases, tables, views, fields and indexes
* create, copy, drop, rename and alter databases, tables, fields and indexes
* maintenance server, databases and tables, with proposals on server
configuration
* execute, edit and bookmark any SQL-statement, even batch-queries
* load text files into tables
* create^1 and read dumps of tables
* export^1 data to various formats: CSV, XML, PDF, ISO/IEC 26300 -
OpenDocument Text and Spreadsheet, Word, Excel and L^AT[E]X formats
* import data and MySQL structures from Microsoft Excel and OpenDocument
spreadsheets, as well as XML, CSV, and SQL files
* administer multiple servers
* manage MySQL users and privileges
* check referential integrity in MyISAM tables
* using Query-by-example (QBE), create complex queries automatically
connecting required tables
* create PDF graphics of your Database layout
* search globally in a database or a subset of it
* transform stored data into any format using a set of predefined functions,
like displaying BLOB-data as image or download-link
* track changes on databases, tables and views
* support InnoDB tables and foreign keys (see FAQ 3.6)
* support mysqli, the improved MySQL extension (see FAQ 1.17)
* communicate in 57 different languages
* synchronize two databases residing on the same as well as remote servers
(see FAQ 9.1)
A word about users:
Many people have difficulty understanding the concept of user management with
regards to phpMyAdmin. When a user logs in to phpMyAdmin, that username and
password are passed directly to MySQL. phpMyAdmin does no account management on
its own (other than allowing one to manipulate the MySQL user account
information); all users must be valid MySQL users.
^1) phpMyAdmin can compress (Zip, GZip -RFC 1952- or Bzip2 formats) dumps and
CSV exports if you use PHP with Zlib support (--with-zlib) and/or Bzip2 support
(--with-bz2). Proper support may also need changes in php.ini.
Installation
1. Quick Install
2. Setup script usage
3. Linked-tables infrastructure
4. Upgrading from an older version
5. Using authentication modes
phpMyAdmin does not apply any special security methods to the MySQL database
server. It is still the system administrator's job to grant permissions on the
MySQL databases properly. phpMyAdmin's "Privileges" page can be used for this.
Warning for Mac users:
if you are on a Mac OS version before OS X, StuffIt unstuffs with Mac formats.
So you'll have to resave as in BBEdit to Unix style ALL phpMyAdmin scripts
before uploading them to your server, as PHP seems not to like Mac-style end of
lines character ("\r").
Quick Install
1. Choose an appropriate distribution kit from the phpmyadmin.net Downloads
page. Some kits contain only the English messages, others contain all
languages in UTF-8 format (this should be fine in most situations), others
contain all languages and all character sets. We'll assume you chose a kit
whose name looks like phpMyAdmin-x.x.x-all-languages.tar.gz.
2. Untar or unzip the distribution (be sure to unzip the subdirectories): tar
-xzvf phpMyAdmin_x.x.x-all-languages.tar.gz in your webserver's document
root. If you don't have direct access to your document root, put the files
in a directory on your local machine, and, after step 4, transfer the
directory on your web server using, for example, ftp.
3. Ensure that all the scripts have the appropriate owner (if PHP is running
in safe mode, having some scripts with an owner different from the owner of
other scripts will be a problem). See FAQ 4.2 and FAQ 1.26 for suggestions.
4. Now you must configure your installation. There are two methods that can be
used. Traditionally, users have hand-edited a copy of config.inc.php, but
now a wizard-style setup script is provided for those who prefer a
graphical installation. Creating a config.inc.php is still a quick way to
get started and needed for some advanced features.
+ To manually create the file, simply use your text editor to create the
file config.inc.php (you can copy config.sample.inc.php to get minimal
configuration file) in the main (top-level) phpMyAdmin directory (the
one that contains index.php). phpMyAdmin first loads libraries/
config.default.php and then overrides those values with anything found
in config.inc.php. If the default value is okay for a particular
setting, there is no need to include it in config.inc.php. You'll need
a few directives to get going, a simple configuration may look like
this:
<?php
$cfg['blowfish_secret'] = 'ba17c1ec07d65003'; // use here a value of your choice
$i=0;
$i++;
$cfg['Servers'][$i]['auth_type'] = 'cookie';
?>
Or, if you prefer to not be prompted every time you log in:
<?php
$i=0;
$i++;
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'cbb74bc'; // use here your password
$cfg['Servers'][$i]['auth_type'] = 'config';
?>
For a full explanation of possible configuration values, see the
Configuration Section of this document.
+ Instead of manually editing config.inc.php, you can use the Setup
Script. First you must manually create a folder config in the
phpMyAdmin directory. This is a security measure. On a Linux/Unix
system you can use the following commands:
cd phpMyAdmin
mkdir config # create directory for saving
chmod o+rw config # give it world writable permissions
And to edit an existing configuration, copy it over first:
cp config.inc.php config/ # copy current configuration for editing
chmod o+w config/config.inc.php # give it world writable permissions
On other platforms, simply create the folder and ensure that your web
server has read and write access to it. FAQ 1.26 can help with this.
Next, open setup/ in your browser. Note that changes are not saved to
disk until explicitly choose Save from the Configuration area of the
screen. Normally the script saves the new config.inc.ph