Attention Interested in functions, hooks, classes, or methods? Check out the new WordPress Code Reference!


These FAQs have been deprecated. You will find the new updated Frequently Asked Questions on the new pages for the FAQ.

Back to FAQ

PHP and MySQL Requirements

You certainly need PHP (version 4.1 or newer) and MySQL (version 3.23.23 or newer) to power your WordPress blog. PHP is the scripting language that drives all of WordPress, and without PHP, your server will not be able to interpret the pages that create your weblog. MySQL is a relational database, and WordPress works only with MySQL. Other databases are not supported at the moment.

MySQL 4.1.7

Do NOT use this version of mysql if you are trying to get WordPress installed using a Windows platform. Read this post originally made to the forums:

"To all those having problems installing Wordpress on your own Windows 2000 (and other Win OS versions) workstation - and maybe some host servers, too: Do not use MySQL 4.1.7 - it is the problem if you get "Error establishing a database connection!". It does not seem compatible with the other components. Use MYSQL 4.0.22 instead.

Thanks to the Reply by ADAMANT in response to the POST of Nov 6, 2004 02:21:29 by ANTOINE, the Wordpress installation really did become only 5 minutes, after two days of frustration:

I started with Windows 2000, PHP 4.3.9, Apache 1.3.33 and MySQL 4.1.7. I spent two days checking my wp-config.php literally 100 times; making changes; troubleshooting my database, using every known name for my host (localhost,, <IP address>, computer name, etc...) to no avail. I kept getting:

"Error establishing a database connection!" ...

I knew it wasn't my config. So thanks to ADAMANT's suggestion, I uninstalled MySQL 4.1.7 and downloaded and installed MySQL 4.0.22 from mysql.org. After installing and configuring the new (old) MySQL, which took approximately 7 minutes (very easy), I ran the install.php once again and YES!! it actually took less than 5 minutes for the Wordpress install.

NOTE: the Apache web site says NOT to use Apache 2 in production. So, after all my wasted time with the latest MySQL, I suggest the following to those who can control their environment: PHP 4.3.9, Apache 1.3.33 and MySQL 4.0.22. On Windows at least, they all work well together."


[UPDATE: MySQL 4.1.7 uses a new password encryption system that is incompatible with prior methods. If you want to get WordPress working with a 4.1.7 database, you need to make sure your user password is set as an old-style password (password-old instead of password, if you're using mysqladmin). -- Nabil] Note : The above are actual user comments, and may be subjective in their content. It is hoped that it will be of help to some users who face the specific problems that are addressed by this question..

Why does WordPress use MySQL?

MySQL is extremely fast. It's also the most widely available database server in the world. Open-source and free, MySQL is supported by thousands of low-cost Linux (and Windows!) hosts, which means a very low barrier to entry for anyone wanting to start a WordPress (or database-driven) website. MySQL's documentation is useful, cogent and thorough. (Though it may be intimidating if you're new to all this.) Add to all that the fact that users are able to directly manipulate MySQL with phpMyAdmin, developed expressly for that purpose, and it's obvious that MySQL is the best choice. Of course, WordPress insists on the best.

There are several other excellent database storage engines, such as PostgreSQL and SQLite that WordPress is interested in supporting in the future. Suppporting multiple databases is trickier than it sounds and is not under active development, although there are plenty of architectural discussions about the best approach to take. Approaches for increasing the number of supported databases are discussed at Using Alternative Databases. There is a PostgreSQL port of WordPress available called WordPress-Pg.

Upload Path

When you specified the upload path, you used backslashes.

Use forward slashes "/" to specify the directory.

Delete Files

There are no files that you must delete. There are no risks to your WordPress files or your database by leaving all the files exactly as they were when you uploaded them.

However, it is safe to delete the following:

  • license.txt
  • Readme.html
  • the import*.php files

Rename Folder

If you have not installed WordPress, you can rename the folder with the WordPress files.

If you have already installed WordPress, and you want to rename the folder, login to the weblog as the administrator and change the following settings in Options->General :

  • WordPress address (URI):
  • Blog address (URI):

Once you have done this, you can rename the directory or folder with the wordpress files in it.

Safe Mode

Most definitely! There are no known issues with any version of WordPress when PHP is running in Safe Mode.


In order to accept incoming pingbacks, you have to set 'allow_url_fopen = On' in php.ini.

403 Error

Symptoms: You cannot seem to login after using the right username and password, into your admin account.

You get an error message like :

You are not authorized to view this page
You might not have permission to view this directory or page using the credentials you supplied.
If you believe you should be able to view this directory or page, please try to contact the Web 
site by using any e-mail address or phone number that may be listed on the personal.rbhemauer.com
home page. You can click Search to look for information on the Internet. 
HTTP Error 403 - Forbidden

Solution: If your account is hosted on a Windows server, it could be a problem with the Directory Indexes. The default configuration of the server is to load index.htm, index.html, default.htm, default.html, default.asp files.

Wordpress is done in PHP so the default page is index.php. Now this is not part of the default configuration so we need to add it. To do this, you need to click on Web Options in the Control Panel. Then scroll down to the Directory Indexes section to add index.php to the Directory Indexes.

You could also contact your webhost for support in this matter.

Create Database

In the setup of WordPress, it will ask to setup the database. The appropriate answers are "Yes" and "No".

  • If your hosting plan allows only one MySQL database, you will probably need to answer "Yes".
  • If you have multiple databases you can use, you will need to create the database, and then assign that name to DB NAME in wp-config.php so that WordPress knows which database to use when installing.

PHP Version

To get information about your server, you can use the PHP Info function:

  • Paste this into a new Notepad / BBEdit file
<?php phpinfo(); ?>
  • Save as info.php
  • Upload to server. Visit in your browser (www.example.com/info.php)
  • That will give you info about your php version and mod_rewrite.

Multiple Blogs

See: Installing Multiple Blogs


WordPress works best on Apache 2.x To see your version, the phpinfo script above will tell you what version of Apache your server is running.

Note: If you are running WordPress 1.5 on Apache 1.3.x you will have trouble Using Permalinks with the %category% permalink structure. "If you are using Apache 1, do not use %category% in your permalink structure."

Back to FAQ