Reading files from a web server upload directory

To get around cases where uploads are completely disabled by a web server's PHP configuration, or where upload limits are too small, phpMyAdmin can read upload files from a special directory located on the web server's file system.

We first specify the directory name of our choice in the $cfg['UploadDir'] parameter, for example,'./upload'. We can also use the %u string, as described in Chapter 6, to represent the user's name.

Now, let us go back to the Import page. We get an error message:

The directory you set for upload work cannot be reached.

This error message is expected, as the directory does not exist. It is supposed to have been created inside the current phpMyAdmin installation directory. The message might also indicate that the directory exists, but can't be read by the web server.

Note

In PHP safe mode, the owner of the directory and the owner of the phpMyAdmin-installed scripts must be the same.

Using an SFTP or FTP client, we create the necessary directory, and can now upload a file there (for example book.sql) bypassing any PHP timeouts or upload maximum limits.

Tip

Note that the file itself must have permissions that allow the web server to read it.

In most cases, the easiest way is to allow everyone to read the file.

Refreshing the Import page brings up the following screenshot:

Reading files from a web server upload directory

Clicking on Go should execute the statements located in the file.

Automatic decompression is also available for the files located in the upload directory. The file names should have extensions such as .bz2, .gz, .sql.bz2, or .sql.gz.

Note

Using the double extensions (.sql.bz2) is a better way to indicate that a .sql file was produced and then compressed, as we see all the steps used to generate this file.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.133.138.177