eugabrielsilva/sql-dumper 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

eugabrielsilva/sql-dumper

最新稳定版本:v1.2.0

Composer 安装命令:

composer require eugabrielsilva/sql-dumper

包简介

SQL backup dumper made in pure PHP

README 文档

README

This is a PHP package designed to generate an SQL dump from a MySQL database using pure PHP, without needing to rely on mysqldump or other tools.

Latest Version Total Downloads License PHP Version

Requirements

  • PHP version 7.4 or higher with pdo_mysql and mbstring extensions enabled
  • MySQL server and a user with SHOW and SELECT privileges

Installation

Through Composer:

composer require eugabrielsilva/sql-dumper

Manual installation:
Copy src/SQLDumper.php and include it in your script.

Usage

// Include Composer packages if not yet
require 'vendor/autoload.php';

// Create SQLDumper instance
$db = new \GabrielSilva\SQLDumper\SQLDumper();

// Set your server settings (optional)
$db->host = 'localhost';
$db->user = 'root';
$db->password = '';
$db->db = 'app';

// Generate dump to an SQL file
$db->dumpToFile('backup.sql');

// You can also dump to a string
$dump = $db->dumpToString();

Options

There are a few options that you can use to modify SQLDumper, these options are properties from the instance that can be overwritten.

Note: values shown below are the default ones.

$db->host = 'localhost'; // Server hostname
$db->user = 'root'; // Username to connect to the database
$db->password = ''; // User password
$db->db = 'app'; // Database name
$db->port = 3306; // Server port
$db->charset = 'utf8'; // Database charset
$db->includes = []; // Array of tables to include in dump, empty for all
$db->excludes = []; // Array of tables to exclude from dump
$db->includesData = []; // Array of tables to include data in dump, empty for all
$db->excludesData = []; // Array of tables to exclude data from dump
$db->createTables = true; // Include CREATE TABLE statements in dump
$db->createDatabase = false; // Include CREATE DATABASE statement in dump
$db->dropTables = false; // Include DROP TABLE statements in dump
$db->dropDatabase = false; // Include DROP DATABASE statement in dump
$db->insertData = true; // Include data in dump
$db->deleteData = false; // TRUNCATE data from tables before inserting
$db->insertType = 'INSERT'; // Insert type: INSERT, INSERT IGNORE or REPLACE
$db->safeMode = true; // Use IF EXISTS and IF NOT EXISTS checks in dump
$db->chunkSize = 3000; // Number of rows to fetch per query (useful on large tables)

Important

If you change any of the server options, like host, user, password, db, port or charset, you need to refresh the database connection by calling $db->connect() method.

Credits

Package developed and maintained by Gabriel Silva.

统计信息

  • 总下载量: 82
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 4
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2022-10-19