Upload or Import? To upload , there is no other way then just normal upload using a FTP client. To import, I always use Big Dump: http://www.ozerov.de/bigdump/ Basically, what you need to do is: 1. Upload the database on the server using a FTP client . 2. Upload bigdump.php in the same folder with the database. 3. Edit Big dump config files and provide the local path to the database that you want to import and then the config details of your new database ( where you want to import) 4. Let Big Dump to do the Job. Just run bigdump.php
Please ask your hosting provider to extand the mysql import in php.ini. Should look it for : upload_max_filesize, post_max_size
From Security and performance point of view they wont do that But that's another subject plus , bigdump it's pretty easy and you dont have to wait for a response from your webhost.
upload the database at other server and start to export only 50-100 tables. Create a database at your restricted host and start to import the tables. But if they wont allow you to upload more then 50m or similiar and you upload 1 gb your account may be suspended. So take care
Make sure you change both *"post_max_size"* and *"upload_max_filesize"* in your "php.ini" (which is located where your "php.exe" is). The following example allows you to upload and import 128MB sql files: post_max_size=128M upload_max_filesize=128M Restart Apache and you're all set. An alternative way to work around the problem is to use the command line. But it's a workaround, and as ugly as workarounds get: C:\xampp\mysql\mysql.exe -u root -p db_name < C:\some_path\your_sql_file.sql As you're not using the server but the command line, upload and POST sizes don't matter. That's why I call this a "workaround", since it doesn't actually solve your problem.
if your new hosting is using the same version of mysql, you can copy your old database and upload it to your new hosting directly.
It's sort of funny to look at people saying that php.ini is in the same folder as php.exe, and listing a Windows-commandline syntax for doing it via command line. Frankly, I don't think many database servers run Windows... at least not when he asks how to upload it - not many hosts running on Windows.
place the source file in the folder that contains the mysql database login to mysql as admin GRANT FILE PRIVILEGES ON database.* TO 'mysqluser'@'%' IDENTIFIED BY 'mysqlpassword' login to mysql as mysqluser LOAD DATA INFILE 'source.csv' FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\r\n' doing this from memory so there may be a typo in there somewhere. this eliminated the php upload file size limits
You haven't specified how big the size is, but you can always use phpmyadmin for import Default size is 2 MB and you can change it in php.ini by changing post_max_size and upload_max_filesize
Here is something I wrote about moving a large database from one server to another Log in to your server via SSH mysqldump -u YOUR_DB_USER -p YOUR_DB_NAME > YOUR_SQL_TO_BE_MADE_X-XX-2009.sql It'll prompt you for your password. Type it in. It'll generate an SQL file of your complete database. THEN... tar -cvf YOUR_SQL_FILE_GENERATED_X-XX-2009.sql gzip YOUR_SQL_FILE_GENERATED_X-XX-2009.tar Now you have a compressed file named YOUR_SQL_FILE_GENERATED_X-XX-2009.tar.gz Now log into your new (or other) server via SSH. And... ftp ftp.YOUR_OLD_SERVER_ADDRESS dir DIRECTORY_NAME get YOUR_SQL_FILE_GENERATED_X-XX-2009.tar.gz quit That'll transfer the backup file no matter how large it is... Then from the new servers terminal: tar -xzvf YOUR_SQL_FILE_GENERATED_X-XX-2009.tar.gz It'll decompress and extract YOUR_SQL_FILE_GENERATED_X-XX-2009.sql Then you type (assuming you created the mysql database and a user): mysql -u YOUR_DB_USER -p YOUR_DB_NAME < YOUR_SQL_FILE_GENERATED_X-XX-2009.sql And your server will automatically import the backup.