I'm trying to upload a completed prototype to my client's host. I'm having a problem with phpMyAdmin 2.10.3 performing the database import operation. The import failed because the import file exceeded phpMyAdmin's size limit of 10 MB.
I manually divided the file into two parts and imported them in order. Both import operations were successful, and my site works -- but many of the nodes are truncated. The text simply ends after a dozen lines or so.
I looked at some of the truncated nodes through the content management page, and it shows that they are indeed truncated. I tried to inspect them directly in the database, but I could not find the table that holds node content. I looked at the segmented import files, and found them to be intact.
I don't know what is going on, but I suspect it has something to do with the segmentation, since I have imported smaller unsegmented files several times before without trouble.
Can anyone suggest what to look for? I am not deeply familiar with phpMyAdmin, and I'm baffled.
On a related topic, for the future I need to find a more efficient way to import a large database than by manually segmenting an export file and importing it a piece at a time. The process is both time-consuming and error-prone. It is much easier for me to do development on my own machine than on the host, but I need to find a more effective way of uploading my work, or I will lose much of what I gain.
I searched the web and found several possible solutions to this problem, but all of them require shell access on the host, which I do not have.
Comments
ask the provider?
if you don't have shell access, and your provider is nice, they might just do it for you.
======
Jason
Bigdump
Use Bigdump found here: http://www.ozerov.de/bigdump.php
Make sure you don't use extended inserts when you export your database. On the page is says how to use it.
Good luck!
Yep, I was going to suggest
Yep, I was going to suggest 'Big Dump'.
Or there are 'remote SQL' applications for Windows, like SQLYog and Navicat,
which would be able to import/export large databases.
SQLyog has a free Community Edition: http://www.webyog.com/en/
The only thing you have to be able to do is configure 'remote access' to your
database. Most webhost backends are capable of this; it's just whther they've
enabled it or not for the account type.
A brilliant idea, or d'oh
Both approaches have pluses and minuses. A program like SQLyog is a packaged solution, and would be useful for many things other than imports. The requirement for remote access could be a sticking point, though, with a host who considers shell access a security risk. I gather that BigDump requires no special resources, but installing and using it looks like a small programming project, and I can't afford that kind of diversion from my client's development work right now.
After I posted the question I had a brilliant insight, or maybe a "d'oh" moment: phpMyAdmin will read a zipped dump file as well as an uncompressed one, and if it applies the file size limit to the physical file rather than the uncompressed contents, that gives me plenty of headroom. I tried it, and it worked. That solved the immediate problem.
I'm going to look into those other two approaches, because I don't like the idea of having to work within any file size limit, but the urgency of the problem has been removed.
> The requirement for remote
> The requirement for remote access could be a sticking point, though, with a
host who considers shell access a security risk.
I don't have 'shell access' as such. In my webhost backend (Cpanel), there is a
'remote access' option in the sql section. All I needed to do to use SQLYog was
input my ip address there.
However, many hosts have that option disabled for the cheaper accounts, and
enable it as an additional feature in more expensive ones.
Glad you found the 'compressed-zip' solution.