Skip to content

berkaltiok/php-mysqlimporter

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PHP Mysql Importer

PHP class for importing big SQL files into MySQL server.

This class comes to overpass the problem in phpMyAdmin (and others) , when you can't upload files of decent size through the browser upload.

With this class you get the same function, just by uploading the file via FTP and doing the importing with 3 simple commands, e.g.

include("php-mysqlimporter.php");
$mysqlImport = new MySQLImporter("localhost", "user", "password");
$mysqlImport->doImport("yourfile.sql");

Links

Requirements:

  1. PHP 5.0+
  2. MySQLi extension

Download

git clone https://github.com/davcs86/php-mysqlimporter.git
  • Using Composer, add "davcs86/php-mysqimporter" as a dependency in your project's composer.json file:
{
    "require": {
		"davcs86/php-mysqlimporter": "dev-master"
    }
}

How to Use:

Initialization

$mysqlImport = new MySQLImporter($host, $user, $password, $port);
Parameter Description
$host Host (or IP) of the MySQL server.
$user Username to login into the server.
$password Password of the user.
$port Listen port of the MySQL server.
Optional. It uses the value in mysqli.default_port as default.

Basic Importing

$mysqlImport->doImport("./sqlfiles/test1.sql");

Error Reporting

if ($mysqlImport->hadErrors){
	// Display errors
	echo "<pre>\n";
	print_r($mysqlImport->errors);
	echo "\n</pre>";
} else {
	echo "<strong>File imported successfully</strong>";
}

Advanced Importing

  1. You can specify database.
    NOTE: This doesn't override the clause USE in the file, but sets an initial database.
$mysqlImport->doImport("./sqlfiles/test1.sql", "initial_db_name");
  1. You can create the database (if it doesn't exist).
$mysqlImport->doImport("./sqlfiles/test1.sql", "initial_db_name", true);
  1. You can drop the database and then create it.
$mysqlImport->doImport("./sqlfiles/test1.sql", "initial_db_name", true, true);
  1. Or just drop it. Particularly useful if you already got a CREATE statement in your SQL file.
$mysqlImport->doImport("./sqlfiles/test1.sql", "initial_db_name", false, true);

Support

Drop me line on: http://d-castillo.info/contactme/ or to: davcs86@gmail.com

Donations

Did this project help you to save (or earn) some money?
Please, support to the author by making a small donation.

Buy Me A Coffee :) @ PayPal

About

PHP class for importing big SQL files into MySQL.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 100.0%