php.ini

Fix “No data was received to import…” in phpMyAdmin with IIS

I have Windows 2008 R2 VPS & already installed IIS v7.5, PHP & MySQL.

I move some of my websites to this new VPS & try to import MySQL database via phpMyAdmin. I was greeted with following error.

No data was received to import. Either no file name was submitted, or the file size exceeded the maximum size permitted by your PHP configuration. See FAQ 1.16.

FAQ 1.16 does not help because it only says that my upload database size is too big. I only try to import 5kb database way below the limit.

Further digging reveal that the problem caused by the temporary directory PHP uses for uploads. By default this is C:\Windows\Temp, which is not writable for PHP.

To solve this,

1. Edit “php.ini” file & change

upload_tmp_dir="C:\Windows\temp"

to

upload_tmp_dir="C:\inetpub\temp"

2. Make sure to remove any other “upload_tmp_dir” settings.

3. Set permissions on “C:\inetpub\temp” so that IUSR and IIS_IUSRS have write permission.

4. Restart the web server (IIS)


How to Permanently Fix WordPress Memory Exhausted Error in VPS

Recently, I upgrade my hosting account from a share hosting to a VPS system. I manage to get a very good deal from TurnKey Internet through their Black Friday 2011 sale.

After setting up the server, I started to move my wordpress blog to new VPS hosting. I restore the database & all the files. I checked the blog & everything function wonderfully well with a better speed.

I try to enter the admin page, but I was greeted with the following error message.

Fatal error: Allowed memory size of 33554432 bytes exhausted
(tried to allocate .....)

After a search through the internet, I found the solution by placing the following code in “wp-config.php” file under the wordpress directory.

define('WP_MEMORY_LIMIT', '64M');

However, I feel it is not practical to change one by one for all my blogs.

If you have VPS system with WHM/Cpanel, you can fix it permanently by

    1. Log in to WHM
    2. On the left-hand side menu, locate “Service Configuration” header
    3. Click on “PHP Configuration Editor”
    4. In the “Basic Mode” find the following line
Section Directive Info Value
Core memory_limit This sets the maximum amount of memory in bytes that a script is allowed to allocate. This helps prevent poorly written scripts for eating up all available memory on a server. Note that to have no memory limit, set this directive to -1. 32M
  1. Change the “Value” from “32M” to “64M”. Take note on the capital “M”
  2. I should fix all wordpress blogs in the same VPS