+ +
+

FAQ - Frequently Asked Questions

+

Please have a look at our Link section on the official +phpMyAdmin homepage for in-depth coverage of phpMyAdmin’s features and +or interface.

+
+

Server

+
+

1.1 My server is crashing each time a specific action is required or phpMyAdmin sends a blank page or a page full of cryptic characters to my browser, what can I do?

+

Try to set the $cfg['OBGzip'] directive to false in your +config.inc.php file and the zlib.output_compression directive to +Off in your php configuration file.

+
+
+

1.2 My Apache server crashes when using phpMyAdmin.

+

You should first try the latest versions of Apache (and possibly MySQL). If +your server keeps crashing, please ask for help in the various Apache support +groups.

+ +
+
+

1.3 (withdrawn).

+
+
+

1.4 Using phpMyAdmin on IIS, I’m displayed the error message: “The specified CGI application misbehaved by not returning a complete set of HTTP headers ...”.

+

You just forgot to read the install.txt file from the PHP +distribution. Have a look at the last message in this PHP bug report #12061 from the official PHP bug +database.

+
+
+

1.5 Using phpMyAdmin on IIS, I’m facing crashes and/or many error messages with the HTTP.

+

This is a known problem with the PHP ISAPI filter: it’s not so stable. +Please use instead the cookie authentication mode.

+
+
+

1.6 I can’t use phpMyAdmin on PWS: nothing is displayed!

+

This seems to be a PWS bug. Filippo Simoncini found a workaround (at +this time there is no better fix): remove or comment the DOCTYPE +declarations (2 lines) from the scripts libraries/Header.class.php +and index.php.

+
+
+

1.7 How can I gzip a dump or a CSV export? It does not seem to work.

+

This feature is based on the gzencode() +PHP function to be more independent of the platform (Unix/Windows, +Safe Mode or not, and so on). So, you must have Zlib support +(--with-zlib).

+
+
+

1.8 I cannot insert a text file in a table, and I get an error about safe mode being in effect.

+

Your uploaded file is saved by PHP in the “upload dir”, as defined in +php.ini by the variable upload_tmp_dir (usually the system +default is /tmp). We recommend the following setup for Apache +servers running in safe mode, to enable uploads of files while being +reasonably secure:

+
    +
  • create a separate directory for uploads: mkdir /tmp/php
  • +
  • give ownership to the Apache server’s user.group: chown +apache.apache /tmp/php
  • +
  • give proper permission: chmod 600 /tmp/php
  • +
  • put upload_tmp_dir = /tmp/php in php.ini
  • +
  • restart Apache
  • +
+
+
+

1.9 (withdrawn).

+
+
+

1.10 I’m having troubles when uploading files with phpMyAdmin running on a secure server. My browser is Internet Explorer and I’m using the Apache server.

+

As suggested by “Rob M” in the phpWizard forum, add this line to your +httpd.conf:

+
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
+
+
+

It seems to clear up many problems between Internet Explorer and SSL.

+
+
+

1.11 I get an ‘open_basedir restriction’ while uploading a file from the import tab.

+

Since version 2.2.4, phpMyAdmin supports servers with open_basedir +restrictions. However you need to create temporary directory and configure it +as $cfg['TempDir']. The uploaded files will be moved there, +and after execution of your SQL commands, removed.

+
+
+

1.12 I have lost my MySQL root password, what can I do?

+

phpMyAdmin does authenticate against MySQL server you’re using, so to recover +from phpMyAdmin password loss, you need to recover at MySQL level.

+

The MySQL manual explains how to reset the permissions.

+

If you are using MySQL server installed by your hosting provider, please +contact their support to recover the password for you.

+
+
+

1.13 (withdrawn).

+
+
+

1.14 (withdrawn).

+
+
+

1.15 I have problems with mysql.user column names.

+

In previous MySQL versions, the User and Password columns were +named user and password. Please modify your column names to +align with current standards.

+
+
+

1.16 I cannot upload big dump files (memory, HTTP or timeout problems).

+

Starting with version 2.7.0, the import engine has been re–written and +these problems should not occur. If possible, upgrade your phpMyAdmin +to the latest version to take advantage of the new import features.

+

The first things to check (or ask your host provider to check) are the values +of max_execution_time, upload_max_filesize, memory_limit and +post_max_size in the php.ini configuration file. All of these +settings limit the maximum size of data that can be submitted and handled by +PHP. Please note that post_max_size needs to be larger than +upload_max_filesize. There exist several workarounds if your upload is too +big or your hosting provider is unwilling to change the settings:

+
    +
  • Look at the $cfg['UploadDir'] feature. This allows one to upload a file to the server +via scp, FTP, or your favorite file transfer method. PhpMyAdmin is +then able to import the files from the temporary directory. More +information is available in the Configuration of this document.

    +
  • +
  • Using a utility (such as BigDump) to split the files before +uploading. We cannot support this or any third party applications, but +are aware of users having success with it.

    +
  • +
  • If you have shell (command line) access, use MySQL to import the files +directly. You can do this by issuing the “source” command from within +MySQL:

    +
    source filename.sql;
    +
    +
    +
  • +
+
+
+

1.17 Which Database versions does phpMyAdmin support?

+

For MySQL, versions 5.5 and newer are supported. +For older MySQL versions, our Downloads page offers older phpMyAdmin versions +(which may have become unsupported).

+

For MariaDB, versions 5.5 and newer are supported.

+
+
+

1.17a I cannot connect to the MySQL server. It always returns the error message, “Client does not support authentication protocol requested by server; consider upgrading MySQL client”

+

You tried to access MySQL with an old MySQL client library. The +version of your MySQL client library can be checked in your phpinfo() +output. In general, it should have at least the same minor version as +your server - as mentioned in 1.17 Which Database versions does phpMyAdmin support?. This problem is +generally caused by using MySQL version 4.1 or newer. MySQL changed +the authentication hash and your PHP is trying to use the old method. +The proper solution is to use the mysqli extension with the proper client library to match +your MySQL installation. More +information (and several workarounds) are located in the MySQL +Documentation.

+
+
+

1.18 (withdrawn).

+
+
+

1.19 I can’t run the “display relations” feature because the script seems not to know the font face I’m using!

+

The TCPDF library we’re using for this feature requires some special +files to use font faces. Please refers to the TCPDF manual to build these files.

+
+
+

1.20 I receive an error about missing mysqli and mysql extensions.

+

To connect to a MySQL server, PHP needs a set of MySQL functions +called “MySQL extension”. This extension may be part of the PHP +distribution (compiled-in), otherwise it needs to be loaded +dynamically. Its name is probably mysqli.so or php_mysqli.dll. +phpMyAdmin tried to load the extension but failed. Usually, the +problem is solved by installing a software package called “PHP-MySQL” +or something similar.

+

There are currently two interfaces PHP provides as MySQL extensions - mysql +and mysqli. The mysqli is tried first, because it’s the best one.

+

This problem can be also caused by wrong paths in the php.ini or using +wrong php.ini.

+

Make sure that the extension files do exist in the folder which the +extension_dir points to and that the corresponding lines in your +php.ini are not commented out (you can use phpinfo() to check +current setup):

+
[PHP]
+
+; Directory in which the loadable extensions (modules) reside.
+extension_dir = "C:/Apache2/modules/php/ext"
+
+
+

The php.ini can be loaded from several locations (especially on +Windows), so please check you’re updating the correct one. If using Apache, you +can tell it to use specific path for this file using PHPIniDir directive:

+
LoadFile "C:/php/php5ts.dll"
+LoadModule php5_module "C:/php/php5apache2_2.dll"
+<IfModule php5_module>
+    PHPIniDir "C:/PHP"
+    <Location>
+       AddType text/html .php
+       AddHandler application/x-httpd-php .php
+    </Location>
+</IfModule>
+
+
+

In some rare cases this problem can be also caused by other extensions loaded +in PHP which prevent MySQL extensions to be loaded. If anything else fails, you +can try commenting out extensions for other databses from php.ini.

+
+ +
+

1.22 I don’t see the “Location of text file” field, so I cannot upload.

+

This is most likely because in php.ini, your file_uploads +parameter is not set to “on”.

+
+
+

1.23 I’m running MySQL on a Win32 machine. Each time I create a new table the table and column names are changed to lowercase!

+

This happens because the MySQL directive lower_case_table_names +defaults to 1 (ON) in the Win32 version of MySQL. You can change +this behavior by simply changing the directive to 0 (OFF): Just +edit your my.ini file that should be located in your Windows +directory and add the following line to the group [mysqld]:

+
set-variable = lower_case_table_names=0
+
+
+
+

Note

+

Forcing this variable to 0 with –lower-case-table-names=0 on a +case-insensitive filesystem and access MyISAM tablenames using different +lettercases, index corruption may result.

+
+

Next, save the file and restart the MySQL service. You can always +check the value of this directive using the query

+
SHOW VARIABLES LIKE 'lower_case_table_names';
+
+
+ +
+
+

1.24 (withdrawn).

+
+
+

1.25 I am running Apache with mod_gzip-1.3.26.1a on Windows XP, and I get problems, such as undefined variables when I run a SQL query.

+

A tip from Jose Fandos: put a comment on the following two lines in +httpd.conf, like this:

+
# mod_gzip_item_include file \.php$
+# mod_gzip_item_include mime "application/x-httpd-php.*"
+
+
+

as this version of mod_gzip on Apache (Windows) has problems handling +PHP scripts. Of course you have to restart Apache.

+
+
+

1.26 I just installed phpMyAdmin in my document root of IIS but I get the error “No input file specified” when trying to run phpMyAdmin.

+

This is a permission problem. Right-click on the phpmyadmin folder and +choose properties. Under the tab Security, click on “Add” and select +the user “IUSR_machine” from the list. Now set his permissions and it +should work.

+
+
+

1.27 I get empty page when I want to view huge page (eg. db_structure.php with plenty of tables).

+

This was caused by a PHP bug that occur when +GZIP output buffering is enabled. If you turn off it (by +$cfg['OBGzip'] in config.inc.php), it should work. +This bug will has been fixed in PHP 5.0.0.

+
+
+

1.28 My MySQL server sometimes refuses queries and returns the message ‘Errorcode: 13’. What does this mean?

+

This can happen due to a MySQL bug when having database / table names +with upper case characters although lower_case_table_names is +set to 1. To fix this, turn off this directive, convert all database +and table names to lower case and turn it on again. Alternatively, +there’s a bug-fix available starting with MySQL 3.23.56 / +4.0.11-gamma.

+
+
+

1.29 When I create a table or modify a column, I get an error and the columns are duplicated.

+

It is possible to configure Apache in such a way that PHP has problems +interpreting .php files.

+

The problems occur when two different (and conflicting) set of +directives are used:

+
SetOutputFilter PHP
+SetInputFilter PHP
+
+
+

and

+
AddType application/x-httpd-php .php
+
+
+

In the case we saw, one set of directives was in +/etc/httpd/conf/httpd.conf, while the other set was in +/etc/httpd/conf/addon-modules/php.conf. The recommended way is +with AddType, so just comment out the first set of lines and +restart Apache:

+
#SetOutputFilter PHP
+#SetInputFilter PHP
+
+
+
+
+

1.30 I get the error “navigation.php: Missing hash”.

+

This problem is known to happen when the server is running Turck +MMCache but upgrading MMCache to version 2.3.21 solves the problem.

+
+
+

1.31 Which PHP versions does phpMyAdmin support?

+

Since release 4.5, phpMyAdmin supports only PHP 5.5 and newer. Since release +4.1 phpMyAdmin supports only PHP 5.3 and newer. For PHP 5.2 you can use 4.0.x +releases.

+

PHP 7 is supported since phpMyAdmin 4.6, PHP 7.1 is supported since 4.6.5, +PHP 7.2 is supported since 4.7.4.

+

HHVM is supported up to phpMyAdmin 4.8.

+

Since release 5.0, phpMyAdmin supports only PHP 7.1 and newer.

+
+
+

1.32 Can I use HTTP authentication with IIS?

+

Yes. This procedure was tested with phpMyAdmin 2.6.1, PHP 4.3.9 in +ISAPI mode under IIS 5.1.

+
    +
  1. In your php.ini file, set cgi.rfc2616_headers = 0
  2. +
  3. In Web Site Properties -> File/Directory Security -> Anonymous +Access dialog box, check the Anonymous access checkbox and +uncheck any other checkboxes (i.e. uncheck Basic authentication, +Integrated Windows authentication, and Digest if it’s +enabled.) Click OK.
  4. +
  5. In Custom Errors, select the range of 401;1 through 401;5 +and click the Set to Default button.
  6. +
+
+

See also

+

RFC 2616

+
+
+
+

1.33 (withdrawn).

+
+
+

1.34 Can I directly access a database or table pages?

+

Yes. Out of the box, you can use a URL like +http://server/phpMyAdmin/index.php?server=X&db=database&table=table&target=script. +For server you can use the server number +which refers to the numeric host index (from $i) in +config.inc.php. The table and script parts are optional.

+

If you want a URL like +http://server/phpMyAdmin/database[/table][/script], you need to do some additional configuration. The following +lines apply only for the Apache web server. +First, make sure that you have enabled some features within the Apache global +configuration. You need Options SymLinksIfOwnerMatch and AllowOverride +FileInfo enabled for directory where phpMyAdmin is installed and you +need mod_rewrite to be enabled. Then you just need to create the +following .htaccess file in root folder of phpMyAdmin installation (don’t +forget to change directory name inside of it):

+
RewriteEngine On
+RewriteBase /path_to_phpMyAdmin
+RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)/([a-z_]+\.php)$ index.php?db=$1&table=$2&target=$3 [R]
+RewriteRule ^([a-zA-Z0-9_]+)/([a-z_]+\.php)$ index.php?db=$1&target=$2 [R]
+RewriteRule ^([a-zA-Z0-9_]+)/([a-zA-Z0-9_]+)$ index.php?db=$1&table=$2 [R]
+RewriteRule ^([a-zA-Z0-9_]+)$ index.php?db=$1 [R]
+
+
+ +
+
+

1.35 Can I use HTTP authentication with Apache CGI?

+

Yes. However you need to pass authentication variable to CGI using +following rewrite rule:

+
RewriteEngine On
+RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization},L]
+
+
+
+
+

1.36 I get an error “500 Internal Server Error”.

+

There can be many explanations to this and a look at your server’s +error log file might give a clue.

+
+ +
+

1.38 Can I use phpMyAdmin on a server on which Suhosin is enabled?

+

Yes but the default configuration values of Suhosin are known to cause +problems with some operations, for example editing a table with many +columns and no primary key or with textual primary key.

+

Suhosin configuration might lead to malfunction in some cases and it +can not be fully avoided as phpMyAdmin is kind of application which +needs to transfer big amounts of columns in single HTTP request, what +is something what Suhosin tries to prevent. Generally all +suhosin.request.*, suhosin.post.* and suhosin.get.* +directives can have negative effect on phpMyAdmin usability. You can +always find in your error logs which limit did cause dropping of +variable, so you can diagnose the problem and adjust matching +configuration variable.

+

The default values for most Suhosin configuration options will work in +most scenarios, however you might want to adjust at least following +parameters:

+ +

To further improve security, we also recommend these modifications:

+ +

You can also disable the warning using the $cfg['SuhosinDisableWarning'].

+
+
+

1.39 When I try to connect via https, I can log in, but then my connection is redirected back to http. What can cause this behavior?

+

This is caused by the fact that PHP scripts have no knowledge that the site is +using https. Depending on used webserver, you should configure it to let PHP +know about URL and scheme used to access it.

+

For example in Apache ensure that you have enabled SSLOptions and +StdEnvVars in the configuration.

+ +
+ +
+

1.41 When I view a database and ask to see its privileges, I get an error about an unknown column.

+

The MySQL server’s privilege tables are not up to date, you need to +run the mysql_upgrade command on the server.

+
+
+

1.42 How can I prevent robots from accessing phpMyAdmin?

+

You can add various rules to .htaccess to filter access based on user agent +field. This is quite easy to circumvent, but could prevent at least +some robots accessing your installation.

+
RewriteEngine on
+
+# Allow only GET and POST verbs
+RewriteCond %{REQUEST_METHOD} !^(GET|POST)$ [NC,OR]
+
+# Ban Typical Vulnerability Scanners and others
+# Kick out Script Kiddies
+RewriteCond %{HTTP_USER_AGENT} ^(java|curl|wget).* [NC,OR]
+RewriteCond %{HTTP_USER_AGENT} ^.*(libwww-perl|curl|wget|python|nikto|wkito|pikto|scan|acunetix).* [NC,OR]
+RewriteCond %{HTTP_USER_AGENT} ^.*(winhttp|HTTrack|clshttp|archiver|loader|email|harvest|extract|grab|miner).* [NC,OR]
+
+# Ban Search Engines, Crawlers to your administrative panel
+# No reasons to access from bots
+# Ultimately Better than the useless robots.txt
+# Did google respect robots.txt?
+# Try google: intitle:phpMyAdmin intext:"Welcome to phpMyAdmin *.*.*" intext:"Log in" -wiki -forum -forums -questions intext:"Cookies must be enabled"
+RewriteCond %{HTTP_USER_AGENT} ^.*(AdsBot-Google|ia_archiver|Scooter|Ask.Jeeves|Baiduspider|Exabot|FAST.Enterprise.Crawler|FAST-WebCrawler|www\.neomo\.de|Gigabot|Mediapartners-Google|Google.Desktop|Feedfetcher-Google|Googlebot|heise-IT-Markt-Crawler|heritrix|ibm.com\cs/crawler|ICCrawler|ichiro|MJ12bot|MetagerBot|msnbot-NewsBlogs|msnbot|msnbot-media|NG-Search|lucene.apache.org|NutchCVS|OmniExplorer_Bot|online.link.validator|psbot0|Seekbot|Sensis.Web.Crawler|SEO.search.Crawler|Seoma.\[SEO.Crawler\]|SEOsearch|Snappy|www.urltrends.com|www.tkl.iis.u-tokyo.ac.jp/~crawler|SynooBot|crawleradmin.t-info@telekom.de|TurnitinBot|voyager|W3.SiteSearch.Crawler|W3C-checklink|W3C_Validator|www.WISEnutbot.com|yacybot|Yahoo-MMCrawler|Yahoo\!.DE.Slurp|Yahoo\!.Slurp|YahooSeeker).* [NC]
+RewriteRule .* - [F]
+
+
+
+
+

1.43 Why can’t I display the structure of my table containing hundreds of columns?

+

Because your PHP’s memory_limit is too low; adjust it in php.ini.

+
+
+

1.44 How can I reduce the installed size of phpMyAdmin on disk?

+

Some users have requested to be able to reduce the size of the phpMyAdmin installation. +This is not recommended and could lead to confusion over missing features, but can be done. +A list of files and corresponding functionality which degrade gracefully when removed include:

+
    +
  • ./vendor/tecnickcom/tcpdf folder (exporting to PDF)
  • +
  • ./locale/ folder, or unused subfolders (interface translations)
  • +
  • Any unused themes in ./themes/
  • +
  • ./js/vendor/jquery/src/ (included for licensing reasons)
  • +
  • ./js/line_counts.php (removed in phpMyAdmin 4.8)
  • +
  • ./doc/ (documentation)
  • +
  • ./setup/ (setup script)
  • +
  • ./examples/
  • +
  • ./sql/ (SQL scripts to configure advanced functionality)
  • +
  • ./js/vendor/openlayers/ (GIS visualization)
  • +
+
+
+

1.45 I get an error message about unknown authentication method caching_sha2_password when trying to log in

+

When logging in using MySQL version 8 or newer, you may encounter an error message like this:

+
+

mysqli_real_connect(): The server requested authentication method unknown to the client [caching_sha2_password]

+

mysqli_real_connect(): (HY000/2054): The server requested authentication method unknown to the client

+
+

This error is because of a version compatibility problem between PHP and MySQL. The MySQL project introduced a new authentication +method (our tests show this began with version 8.0.11) however PHP did not include the ability to use that authentication method. +PHP reports that this was fixed in PHP version 7.4.

+

Users experiencing this are encouraged to upgrade their PHP installation, however a workaround exists. Your MySQL user account +can be set to use the older authentication with a command such as

+
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'PASSWORD';
+
+
+ +
+
+
+

Configuration

+
+

2.1 The error message “Warning: Cannot add header information - headers already sent by ...” is displayed, what’s the problem?

+

Edit your config.inc.php file and ensure there is nothing (I.E. no +blank lines, no spaces, no characters...) neither before the <?php tag at +the beginning, neither after the ?> tag at the end.

+
+
+

2.2 phpMyAdmin can’t connect to MySQL. What’s wrong?

+

Either there is an error with your PHP setup or your username/password +is wrong. Try to make a small script which uses mysql_connect and see +if it works. If it doesn’t, it may be you haven’t even compiled MySQL +support into PHP.

+
+
+

2.3 The error message “Warning: MySQL Connection Failed: Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (111) ...” is displayed. What can I do?

+

The error message can also be: Error #2002 - The server is not +responding (or the local MySQL server’s socket is not correctly configured).

+

First, you need to determine what socket is being used by MySQL. To do this, +connect to your server and go to the MySQL bin directory. In this directory +there should be a file named mysqladmin. Type ./mysqladmin variables, and +this should give you a bunch of info about your MySQL server, including the +socket (/tmp/mysql.sock, for example). You can also ask your ISP for the +connection info or, if you’re hosting your own, connect from the ‘mysql’ +command-line client and type ‘status’ to get the connection type and socket or +port number.

+

Then, you need to tell PHP to use this socket. You can do this for all PHP in +the php.ini or for phpMyAdmin only in the config.inc.php. For +example: $cfg['Servers'][$i]['socket'] Please also make sure +that the permissions of this file allow to be readable by your webserver.

+

On my RedHat-Box the socket of MySQL is /var/lib/mysql/mysql.sock. +In your php.ini you will find a line

+
mysql.default_socket = /tmp/mysql.sock
+
+
+

change it to

+
mysql.default_socket = /var/lib/mysql/mysql.sock
+
+
+

Then restart apache and it will work.

+

Have also a look at the corresponding section of the MySQL +documentation.

+
+
+

2.4 Nothing is displayed by my browser when I try to run phpMyAdmin, what can I do?

+

Try to set the $cfg['OBGzip'] directive to false in the phpMyAdmin configuration +file. It helps sometime. Also have a look at your PHP version number: +if it contains “b” or “alpha” it means you’re running a testing +version of PHP. That’s not a so good idea, please upgrade to a plain +revision.

+
+ +
+

2.6 I get an “Access denied for user: