PHP スケジュールバックアップ MySQL および mysqldump 構文パラメータの詳細

PHP スケジュールバックアップ MySQL および mysqldump 構文パラメータの詳細

まず、MySQL バックアップ コマンド mysqldump の一般的な操作例をいくつか紹介します。

1. mysqldump バックアップ

テーブル構造のみをエクスポートする

d:/PHP/xampp/mysql/bin/mysqldump -h127.0.0.1 -P3306 -uroot -p123456 snsgou_sns_test --no-data --default_character-set=utf8 > d:/Python/data/snsgou_sns_test_table.sql

mysqldumpはデータのみをエクスポートします

d:/PHP/xampp/mysql/bin/mysqldump -h127.0.0.1 -P3306 -uroot -p123456 snsgou_sns_test --no-create-info --default_character-set=utf8 > d:/Python/data/snsgou_sns_test_data.sql

mysqldump すべてをエクスポート (テーブル構造とデータを含む)

d:/PHP/xampp/mysql/bin/mysqldump -h127.0.0.1 -P3306 -uroot -p123456 snsgou_sns_test --default_character-set=utf8 > d:/Python/data/snsgou_sns_test.sql

2. mysqldump の復元 (注: --force パラメータは、エラーが発生しても実行が継続されることを意味します)

d:/PHP/xampp/mysql/bin/mysql -h127.0.0.1 -P3306 -uroot -p123456 snsgou_sns_test --force < d:/Python/data/snsgou_sns_table.sql 

d:/PHP/xampp/mysql/bin/mysql -h127.0.0.1 -P3306 -uroot -p123456 snsgou_sns_test --force < d:/Python/data/snsgou_sns_data.sql

/usr/local/mysql/bin/mysql -h127.0.0.1 -P3306 -uroot -p'sg$123456' snsgou_sns_test --force < /root/2/snsgou_sns_test.sql

注意: mysqldump はバックアップとエクスポートにのみ使用できますが、復元するには mysql コマンドを使用する必要があります。

上記の知識ポイントに基づいて、MySQL データベースのスケジュールされたバックアップ用の PHP スクリプトがコンパイルされます。

設定ファイル: db.inc.jb51.net.php

<?php
/**
 * データベース構成ファイル */
$dbs = 配列(
  配列(
    'ホスト' => '127.0.0.1',
    'ポート' => 6603,
    'ユーザー' => 'ルート'、
    '合格' => '123456',
    'dbname' => 'xxxyyy',
    '文字セット' => 'utf8'
  )、
  配列(
    'ホスト' => '127.0.0.1',
    'ポート' => 6603,
    'ユーザー' => 'ルート'、
    '合格' => '123456',
    'dbname' => 'yyyzzz',
    '文字セット' => 'utf8'
  )、
);
 
$backupPath = 'F:/mysql_bak/' . date('Y-m'). '/' . date('d');
$oldPath = 'F:/mysql_bak/' . (intval(date('Ym')) - 1);
 
// 注意: パスにスペースがある場合は、二重引用符を使用する必要があります $cmd = '"D:/Program Files/MySQL/MySQL Server 5.5/bin/mysqldump"';
 
// すべてをエクスポート $cmd .= " -h%s -P%s -u%s -p%s %s --default_character-set=%s > %s";
 
//テーブル構造のみをエクスポートします//$cmd .= " -h%s -P%s -u%s -p%s %s --no-data --default_character-set=%s > %s";
 
// データのみをエクスポート //$cmd .= " -h%s -P%s -u%s -p%s %s --no-create-info --default_character-set=%s > %s";

バックアップファイル: backup_db.php

<?php
/**
 * データベースのバックアップ */
 
時間制限を設定する(0);
'ROOT_PATH' を定義します。dirname(__FILE__) です。
 
if (!@include ROOT_PATH . '/db.inc.jb51.net.php') {
  echo 'args error';
  //write('args error');
  終了(1);
}
 
// 新しいバックアップディレクトリを作成します new_mkdir($backupPath);
 
// 1 か月前のデータを削除します new_rmdir($oldPath);
 
 
//データベースのバッチバックアップ foreach ($dbs as $db) {
  $cmd2 = '';
  if (isset($db['name'])) {
    $fileName = $backupPath . '/' . $db['name'] . '_' . date('Ymd') . '_' . time() . '.sql';
    $cmd2 = sprintf($cmd、$db['host']、$db['port']、$db['user']、$db['pass']、$db['name']、$db['charset']、$fileName);
    //書き込み($cmd2);
    試す {
      $cmd2 を実行します。
    } キャッチ (例外 $e) {
      // エラーログを書き込む(省略)
      $e->getMessage() をエコーし​​ます。
    }
  }
}
 
 
/**
 * フォルダを作成 *
 * @param string $path フォルダパス* @param int $mode アクセス権* @param boolean $recursive 再帰的に作成するかどうか*/
関数 new_mkdir($path = '', $mode = 0777, $recursive = true) {
  クリアスタットキャッシュ();
  if (!is_dir($path)) {
    mkdir($path, $mode, $recursive);
    chmod($path, $mode);
    $ret = @touch($path . '/index.html');
    @chmod($path . '/index.html', 0777);
    $ret を返します。
  }
 
  true を返します。
}
 
/**
 * フォルダをクリア/削除*
 * @param string $dirname フォルダパス * @param bool $self 現在のフォルダを削除するかどうか * @return bool
 */
関数 new_rmdir($dirname = '', $self = true) {
  ファイルが存在する場合($dirname) {
    false を返します。
  }
  if (is_file($dirname) || is_link($dirname)) {
    unlink($dirname) を返します。
  }
  $dir = dir($dirname);
  ($dir) の場合 {
    while (false !== $entry = $dir->read()) {
      $entry == '.' || $entry == '..' の場合 {
        続く;
      }
      new_rmdir($dirname . '/' . $entry);
    }
  }
  $dir->close();
  $self && rmdir($dirname);
}
 
/**
 * ファイルを書き込む *
 * @param string $filename ファイル名 * @param string $text 書き込むテキスト文字列 * @param string $openmod テキスト書き込みモード ('w': 上書き、'a': テキスト追加)
 * @return ブール値
 */
関数 write_file($filename = '', $text = '', $openmod = 'w') {
  (@$fp = fopen($filename, $openmod)) の場合 {
    群れ($fp, 2);
    fwrite($fp, $text);
    fclose($fp);
    true を返します。
  } それ以外 {
    false を返します。
  }
}
 
/**
 * オブジェクト(数値、文字列、配列を含む)を書き込む
 *
 * @param string $text 書き込むテキスト文字列 * @param string $type テキスト書き込みタイプ ('w': 上書き、'a': テキスト追加)
 */
関数 write($text = '', $type = 'a') {
  if (!is_dir('d:/PHP/xampp/htdocs')) {
    false を返します。
  }
  $ファイル名 = 'd:/PHP/xampp/htdocs/write.txt';
 
  $text = "\r\n++++++++++++++++++++++++++++++++++++++++++++++++\r\n"
    . date('Ymd H:i:s') . "\r\n"
    .print_r($text, true);
  write_file($filename, $text, $type);
}

# スケジュールされたタスクの実行:

d:/PHP/xampp/php/php.exe D:/PHP/xampp/htdocs/BackupDb_git/backup_db.php snsgou.com

# 注意: まず、上記のコマンドが cmd コマンドで正常に実行できることを確認してください。

Windowsでスケジュールされたタスクを構成するには、次を参照してください: Windows Server 2008スケジュールされたタスクの構成(タスクスケジューラ) BATを実行します

「ニューアクション」では、

「プログラムまたはスクリプト」:PHPパーサー(d:/PHP/xampp/php/php.exeなど)を選択します。
「パラメータの追加(オプション)」:D:/PHP/xampp/htdocs/BackupDb_git/backup_db.php jb51.net

Linuxでスケジュールされたタスクを構成するには、LinuxスケジュールされたタスクのCrontabコマンドの詳細な説明を参照してください。

付録: mysqldump パラメータの完全なリスト

パラメータの説明

--すべてのデータベース、-A

データベース全体をエクスポートします。

mysqldump -uroot -p --すべてのデータベース

--すべての表領域、-Y

すべての表領域をエクスポートします。

mysqldump -uroot -p --すべてのデータベース --すべてのテーブルスペース

--テーブルスペースなし、-y

テーブルスペース情報をエクスポートしないでください。

mysqldump -uroot -p --すべてのデータベース --テーブルスペースなし

--データベースの追加と削除

各データベースを作成する前に、drop database ステートメントを追加します。

mysqldump -uroot -p --すべてのデータベース --データベースの追加と削除

--テーブルの追加と削除

各テーブルを作成する前に、drop table ステートメントを追加します。 (デフォルトで有効になっています。オプションを無効にするには --skip-add-drop-table を使用してください)

mysqldump -uroot -p --all-databases (デフォルトでドロップステートメントが追加されます)

mysqldump -uroot -p --all-databases –skip-add-drop-table (ドロップステートメントをキャンセル)

--ロックを追加する

各テーブルをエクスポートする前に LOCK TABLES を追加し、エクスポート後に UNLOCK TABLE を追加します。 (デフォルトで有効になっています。無効にするには --skip-add-locks を使用してください)

mysqldump -uroot -p --all-databases (LOCK ステートメントはデフォルトで追加されます)

mysqldump -uroot -p --all-databases –skip-add-locks (LOCK ステートメントをキャンセル)

--allowキーワード

キーワードである列名の作成を許可します。これは、各列名の前にテーブル名を付けることによって行われます。

mysqldump -uroot -p --すべてのデータベース --allowキーワード

--スレーブステートメントを適用する

「CHANGE MASTER」の前に「STOP SLAVE」を追加し、エクスポートの最後に「START SLAVE」を追加します。

mysqldump -uroot -p --すべてのデータベース --スレーブステートメントを適用

--文字セットディレクトリ

文字セットファイルのディレクトリ

mysqldump -uroot -p --all-databases --character-sets-dir=/usr/local/mysql/share/mysql/charsets

--コメント

追加の注釈情報。デフォルトではオンになっていますが、--skip-commentsで無効にすることができます。

mysqldump -uroot -p --all-databases (デフォルトのレコードコメント)

mysqldump -uroot -p --all-databases --skip-comments (コメント解除)

- 互換性がある

エクスポートされたデータは、他のデータベースや MySQL の古いバージョンと互換性があります。値は、ansi、mysql323、mysql40、postgresql、oracle、mssql、db2、maxdb、no_key_options、no_tables_options、no_field_options などになります。

複数の値を使用する場合は、カンマで区切ります。完全な互換性を保証するものではありませんが、互換性を保つように努めています。

mysqldump -uroot -p --すべてのデータベース --compatible=ansi

- コンパクト

出力情報を少なくエクスポートします (デバッグに役立ちます)。コメント、ヘッダー、フッターを削除します。次のオプションを使用できます: --skip-add-drop-table --skip-add-locks --skip-comments --skip-disable-keys

mysqldump -uroot -p --すべてのデータベース --compact

--complete-insert、-c

完全な挿入ステートメント (列名を含む) を使用します。こうすることで挿入効率は向上しますが、max_allowed_pa​​cket パラメータの影響を受け、挿入が失敗する可能性があります。

mysqldump -uroot -p --すべてのデータベース --完全な挿入

--圧縮、-C

クライアントとサーバー間で送信されるすべてのメッセージの圧縮を有効にする

mysqldump -uroot -p --すべてのデータベース --compress

--create-options、-a

CREATE TABLE ステートメントにすべての MySQL 固有のオプションを含めます。 (デフォルトで開く)

mysqldump -uroot -p --すべてのデータベース

--データベース、-B

複数のデータベースをエクスポートします。このパラメータに続くすべての名前パラメータはデータベース名とみなされます。

mysqldump -uroot -p --databases mysqlをテストする

- デバッグ

デバッグ用のデバッグ情報を出力します。デフォルト値は、d:t:o,/tmp/mysqldump.trace です。

mysqldump -uroot -p --すべてのデータベース --debug

mysqldump -uroot -p --all-databases --debug="d:t:o,/tmp/debug.trace"

--デバッグチェック

メモリとオープンファイルの使用状況をチェックして終了します。

mysqldump -uroot -p --すべてのデータベース --デバッグチェック

--デバッグ情報

デバッグ情報を出力して終了する

mysqldump -uroot -p --すべてのデータベース --debug-info

--デフォルト文字セット

デフォルトの文字セットを設定します。デフォルト値はutf8です。

mysqldump -uroot -p --すべてのデータベース --default-character-set=latin1

--遅延挿入

遅延挿入 (INSERT DELAYED) を使用してデータをエクスポートする

mysqldump -uroot -p --すべてのデータベース --遅延挿入

--マスターログを削除する

マスター バックアップ後にログを削除します。このパラメーターは --master-data を自動的にアクティブ化します。

mysqldump -uroot -p --すべてのデータベース --マスターログを削除

--disable-keys

各テーブルについて、/*!40000 ALTER TABLE tbl_name DISABLE KEYS */; および /*!40000 ALTER TABLE tbl_name ENABLE KEYS */; ステートメントを使用して INSERT ステートメントを参照します。これにより、すべての行が挿入された後にインデックスが作成されるため、ダンプ ファイルのインポートが高速化されます。このオプションは MyISAM テーブルにのみ適用され、デフォルトでオンになっています。

mysqldump -uroot -p --すべてのデータベース

--dumpスレーブ

このオプションを選択すると、データがエクスポートされるファイルにマスターのバイナリログの位置とファイル名が追加されます。 1 に設定すると、CHANGE MASTER コマンドがデータ ファイルに出力されます。2 に設定すると、コマンドの前に説明が追加されます。このオプションは、--single-transaction が指定されていない限り、--lock-all-tables をオンにします。このオプションは --lock-tables オプションを自動的にオフにします。デフォルト値は 0 です。

mysqldump -uroot -p --すべてのデータベース --dump-slave=1

mysqldump -uroot -p --すべてのデータベース --dump-slave=2

--イベント、-E

イベントをエクスポートします。

mysqldump -uroot -p --すべてのデータベース --イベント

--拡張挿入、-e

複数の VALUES 列で INSERT 構文を使用します。これにより、エクスポートされたファイルが小さくなり、インポート プロセスが高速化されます。これはデフォルトでオンになっています。無効にするには --skip-extended-insert を使用します。

mysqldump -uroot -p --すべてのデータベース

mysqldump -uroot -p --all-databases--skip-extended-insert (キャンセルオプション)

--フィールドの終了

エクスポート ファイル内の指定されたフィールドを無視します。 --tab オプションと共に使用されます。--databases および --all-databases オプションと共に使用することはできません。

mysqldump -uroot -p テストテスト --tab="/home/mysql" --fields-terminated-by="#"

--フィールドを囲む

出力ファイル内の各フィールドは、指定された文字で囲まれます。 --tab オプションと共に使用されます。--databases および --all-databases オプションと共に使用することはできません。

mysqldump -uroot -p テスト テスト --tab="/home/mysql" --fields-enclosed-by="#"

--フィールドはオプションで囲む

出力ファイル内のフィールドは、オプションで指定された文字で囲まれます。 --tab オプションと共に使用されます。--databases および --all-databases オプションと共に使用することはできません。

mysqldump -uroot -p test テスト --tab="/home/mysql" --fields-enclosed-by="#" --fields-optionally-enclosed-by="#"

--フィールドのエスケープ

出力ファイルの各フィールドでは、指定された文字は無視されます。 --tab オプションと共に使用されます。--databases および --all-databases オプションと共に使用することはできません。

mysqldump -uroot -p mysql ユーザー --tab="/home/mysql" --fields-escaped-by="#"

--ログをフラッシュする

エクスポートを開始する前にログをフラッシュします。

注意: 複数のデータベースを一度にエクスポートする場合 (オプション --databases または --all-databases を使用)、ログはデータベースごとにフラッシュされます。 --lock-all-tables または --master-data を使用する場合は除きます。この場合、ログは一度フラッシュされ、対応するすべてのテーブルが同時にロックされます。したがって、ログのエクスポートとフラッシュを同時に行う予定の場合は、--lock-all-tables または --master-data と --flush-logs を使用する必要があります。

mysqldump -uroot -p --すべてのデータベース --ログをフラッシュ

--権限をフラッシュする

mysql データベースをエクスポートした後、FLUSH PRIVILEGES ステートメントを発行します。適切なリカバリを行うには、mysql データベースをエクスポートする場合、または mysql データベース データに依存する場合は常にこのオプションを使用する必要があります。

mysqldump -uroot -p --すべてのデータベース --権限をフラッシュ

- 力

エクスポート プロセス中に発生する SQL エラーを無視します。

mysqldump -uroot -p --すべてのデータベース --force

- ヘルプ

ヘルプ情報を表示して終了します。

mysqldump --ヘルプ

--hex-blob

16 進形式を使用してバイナリ文字列フィールドをエクスポートします。バイナリ データがある場合はこのオプションを使用する必要があります。影響を受けるフィールド タイプは、BINARY、VARBINARY、および BLOB です。

mysqldump -uroot -p --すべてのデータベース --hex-blob

--ホスト、-h

エクスポートするホスト情報

mysqldump -uroot -p --host=localhost --all-databases

--テーブルを無視

指定されたテーブルをエクスポートしません。無視するテーブルを複数指定するには、一度に 1 つのテーブルに対してコマンドを複数回繰り返します。各テーブルでは、データベース名とテーブル名の両方を指定する必要があります。たとえば、 --ignore-table=database.table1 --ignore-table=database.table2 … です。

mysqldump -uroot -p --host=localhost --all-databases --ignore-table=mysql.user

--include-マスターホストポート

--dump-slave によって生成された 'CHANGE MASTER TO..' ステートメントに 'MASTER_HOST=<host>, MASTER_PORT=<port>' を追加します。

mysqldump -uroot -p --host=localhost --all-databases --include-master-host-port

--挿入を無視

行を挿入するときは、INSERT IGNORE ステートメントを使用します。

mysqldump -uroot -p --host=localhost --all-databases --insert-ignore

--行の終了

出力ファイルの各行は、指定された文字列で区切られます。 --tab オプションと共に使用されます。--databases および --all-databases オプションと共に使用することはできません。

mysqldump -uroot -p --host=localhost テスト テスト --tab="/tmp/mysql" --lines-terminated-by="##"

--すべてのテーブルをロック、-x

コミット要求は、データの一貫性を確保するために、すべてのデータベース内のすべてのテーブルをロックします。これはグローバル読み取りロックであり、--single-transaction および --lock-tables オプションを自動的にオフにします。

mysqldump -uroot -p --host=localhost --すべてのデータベース --すべてのテーブルをロック

--ロックテーブル、-l

エクスポートを開始する前に、すべてのテーブルをロックします。 MyISAM テーブルへの並列挿入を可能にするには、READ LOCAL を使用してテーブルをロックします。 InnoDB や BDB などのトランザクションをサポートするテーブルの場合、テーブルをロックする必要がまったくないため、--single-transaction の方が適しています。

複数のデータベースをエクスポートする場合、--lock-tables は各データベースのテーブルを個別にロックすることに注意してください。したがって、このオプションでは、データベース間でのエクスポート ファイル内のテーブルの論理的な一貫性を保証することはできません。異なるデータベース テーブルのエクスポート ステータスは完全に異なる場合があります。

mysqldump -uroot -p --host=localhost --all-databases --lock-tables

--logエラー

指定されたファイルに警告とエラーメッセージを追加します

mysqldump -uroot -p --host=localhost --all-databases --log-error=/tmp/mysqldump_error_log.err

--マスターデータ

このオプションは、出力ファイルに binlog の場所とファイル名を追加します。 1 の場合は CHANGE MASTER コマンドが出力され、2 の場合は出力される CHANGE MASTER コマンドの前にコメント情報が追加されます。このオプションは、--single-transaction も指定されていない限り、--lock-all-tables オプションをオンにします (この場合、エクスポートの開始時にグローバル読み取りロックが短時間取得されます。詳細については、以下の --single-transaction オプションを参照してください)。このオプションは --lock-tables オプションを自動的にオフにします。

mysqldump -uroot -p --host=localhost --all-databases --master-data=1;

mysqldump -uroot -p --host=localhost --all-databases --master-data=2;

--max_allowed_pa​​cket

サーバーが送受信できる最大パケット長。

mysqldump -uroot -p --host=localhost --all-databases --max_allowed_pa​​cket=10240

--net_buffer_length

TCP/IP およびソケット接続のバッファ サイズ。

mysqldump -uroot -p --host=localhost --all-databases --net_buffer_length=1024

--自動コミットなし

テーブルを autocommit/commit ステートメントでラップします。

mysqldump -uroot -p --host=localhost --all-databases --no-autocommit

--no-create-db、-n

CREATE DATABASE ステートメントを追加せずにデータのみをエクスポートします。

mysqldump -uroot -p --host=localhost --all-databases --no-create-db

--no-create-info、-t

CREATE TABLE ステートメントを追加せずにデータのみをエクスポートします。

mysqldump -uroot -p --host=localhost --all-databases --no-create-info

--データなし、-d

データはエクスポートせず、データベース テーブル構造のみをエクスポートします。

mysqldump -uroot -p --host=localhost --all-databases --no-data

--名前を設定しない、-N

--skip-set-charset と同等

mysqldump -uroot -p --host=localhost --all-databases --no-set-names

--opt

--add-drop-table、--add-locks、--create-options、--quick、--extended-insert、--lock-tables、--set-charset、--disable-keys と同等です。このオプションはデフォルトで有効になっており、--skip-opt で無効にできます。

mysqldump -uroot -p --host=localhost --all-databases --opt

--プライマリによる順序

主キーまたは最初の一意のキーが存在する場合は、各テーブルのレコードを並べ替えます。これは、MyISAM テーブルを InnoDB テーブルにエクスポートするときに機能しますが、エクスポートに長い時間がかかります。

mysqldump -uroot -p --host=localhost --all-databases --order-by-primary

--パスワード、-p

データベースに接続するためのパスワード

--pipe (Windows で利用可能)

名前付きパイプを使用してMySQLに接続する

mysqldump -uroot -p --host=localhost --all-databases --pipe

--ポート、-P

データベース接続ポート番号

- プロトコル

使用される接続プロトコルには、tcp、ソケット、パイプ、メモリなどがあります。

mysqldump -uroot -p --host=localhost --all-databases --protocol=tcp

--クイック、-q

クエリをバッファリングせず、標準出力に直接エクスポートします。これはデフォルトでオンになっています。無効にするには --skip-quick を使用します。

mysqldump -uroot -p --host=localhost --all-databases

mysqldump -uroot -p --host=localhost --all-databases --skip-quick

--引用名,-Q

テーブル名と列名を引用符 (`) で囲みます。これはデフォルトでオンになっています。無効にするには --skip-quote-names を使用します。

mysqldump -uroot -p --host=localhost --all-databases

mysqldump -uroot -p --host=localhost --all-databases --skip-quote-names

- 交換する

INSERT INTO の代わりに REPLACE INTO を使用してください。

mysqldump -uroot -p --host=localhost --all-databases --replace

--結果ファイル、-r

指定されたファイルに直接出力します。このオプションは、改行に復帰と改行のペア (\\r\\n) を使用するシステム (DOS、Windows など) で使用する必要があります。このオプションにより、1 行のみが使用されるようになります。

mysqldump -uroot -p --host=localhost --all-databases --result-file=/tmp/mysqldump_result_file.txt

--ルーチン、-R

ストアド プロシージャとカスタム関数をエクスポートします。

mysqldump -uroot -p --host=localhost --all-databases --routines

--文字セットを設定する

出力ファイルに「SET NAMES default_character_set」を追加します。これはデフォルトでオンになっています。オフにするには、--skip-set-charset オプションを使用します。

mysqldump -uroot -p --host=localhost --all-databases

mysqldump -uroot -p --host=localhost --all-databases --skip-set-charset

--単一トランザクション

このオプションは、データをエクスポートする前に BEGIN SQL ステートメントを送信します。BEGIN はアプリケーションをブロックせず、エクスポート中にデータベースの一貫性を確保できます。マルチバージョン ストレージ エンジン (InnoDB のみ) でのみ動作します。 LOCK TABLES により保留中のトランザクションが暗黙的にコミットされるため、このオプションは --lock-tables オプションと相互に排他的です。大きなテーブルをエクスポートするには、--quick オプションを使用します。

mysqldump -uroot -p --host=localhost --すべてのデータベース --単一トランザクション

--dump-date

出力ファイルにエクスポート時間を追加します。これはデフォルトでオンになっています。オフにするには、--skip-dump-date オプションを使用します。

mysqldump -uroot -p --host=localhost --all-databases

mysqldump -uroot -p --host=localhost --all-databases --skip-dump-date

--スキップオプション

--opt オプションを無効にします。

mysqldump -uroot -p --host=localhost --all-databases --skip-opt

--ソケット,-S

MySQLに接続するためのソケットファイルの場所を指定します。デフォルトのパスは/tmp/mysql.sockです。

mysqldump -uroot -p --host=localhost --all-databases --socket=/tmp/mysqld.sock

--タブ,-T

指定されたパスにある各テーブルのタブ区切りテキスト ファイルを作成します。注意: これは、mysqldump と mysqld サーバーが同じマシン上で実行されている場合にのみ機能します。

mysqldump -uroot -p --host=localhost テスト テスト --tab="/home/mysql"

--テーブル

--databases (-B) パラメータをオーバーライドして、エクスポートするテーブル名を指定します。

mysqldump -uroot -p --host=localhost --データベーステスト --テーブルテスト

--トリガー

トリガーをエクスポートします。このオプションはデフォルトで有効になっています。--skip-triggers で無効にします。

mysqldump -uroot -p --host=localhost --all-databases --triggers

--tz-utc

異なるタイムゾーンでエクスポートされた TIMESTAMP データの正確性、またはデータが他のタイムゾーンに移動されたときの正確性を確保するには、エクスポートの先頭にタイムゾーン TIME_ZONE='+00:00' を設定します。

mysqldump -uroot -p --host=localhost --all-databases --tz-utc

--ユーザー、-u

接続のユーザー名を指定します。

--verbose、--v

各種プラットフォーム情報を出力します。

--バージョン、-V

mysqldumpのバージョン情報を出力して終了します。

--どこで、-w

指定された WHERE 条件によって選択されたレコードのみをダンプします。条件にスペースまたはコマンド インタープリター固有の文字が含まれている場合は、必ず条件を引用符で囲むようにしてください。

mysqldump -uroot -p --host=localhost --all-databases --where="user='root'"

--xml, -X

XML 形式でエクスポートします。

mysqldump -uroot -p --host=localhost --all-databases --xml

--プラグインディレクトリ

異なるプラグイン バージョンとの互換性のために使用されるクライアント プラグインのディレクトリ。

mysqldump -uroot -p --host=localhost --all-databases --plugin_dir="/usr/local/lib/plugin"

--default_auth

クライアント プラグインはデフォルトの権限を使用します。

mysqldump -uroot -p --host=localhost --all-databases --default-auth="/usr/local/lib/plugin/<PLUGIN>"

上記は、MySQL バックアップをスケジュールするための PHP の mysqldump コマンドの使用法と、mysqldump 構文パラメータ、およびスケジュールされたバックアップの PHP サンプル コードを紹介したものです。皆様のお役に立てれば幸いです。

以下もご興味があるかもしれません:
  • 知らないかもしれないmysqldumpパラメータ
  • MySQL5.7 mysqldump バックアップとリカバリの実装
  • Linuxでmysqlの定期的なコールドバックアップを実装するためにmysqldump+expect+crontabを使用するアイデアの詳細な説明
  • mysqldump を使用した MySql のインポートおよびエクスポート方法の概要
  • MySQL mysqldump の使い方の詳しい説明
  • 完全バックアップとポイントインタイムバックアップにmysqldumpを使用する方法
  • Dockerはmysqldumpコマンドを使用してプロジェクト内のmysqlデータをバックアップおよびエクスポートします。
  • MySQLdump コマンドを使用した MySQL データの移行
  • mysql バックアップ スクリプト mysqldump の使い方の詳細な説明
  • Linux mysqldump によるデータベース、データ、テーブル構造のエクスポートの詳細な説明
  • mysqldumpデータエクスポートの問題に関する詳細な議論
  • MySQL公式エクスポートツールmysqlpumpの使用

<<:  VMware 仮想マシンに Centos7.3 をインストールするチュートリアル図

>>:  Angularコンポーネント投影の詳細な説明

推薦する

Nginx 構成 SSL および WSS 手順の紹介

目次序文1. Nginxのインストール1. Nginxをダウンロードする2. 依存関係をインストール...

CSSアダプティブレイアウトは、サブ要素項目の全体的な中央揃えと内部項目の左揃えを実現します。

日常業務では、次のようなレイアウトに遭遇することがあります。親要素のフレーム (ブラウザのサイズに応...

単一/複数行テキストを含む div を垂直方向に中央揃えする N 通りの方法 (高さ不明/高さ固定)

この問題について話すとき、垂直方向の中央揃えを設定するための vertical-align 属性が ...

bash を使って日付をカウントダウンする方法

重要なイベントまであと何日あるか知りたいですか? Linux bash と date コマンドが役に...

Vueはズームイン、ズームアウト、ドラッグ機能を実装しています

この記事では、参考までに、ズームインとズームアウトのドラッグ機能を実現するためのVueの具体的なコー...

Linux Autofs 自動マウント サービスのインストールと展開のチュートリアル

目次1. autofs サービスの紹介2. Autofsのインストールと展開3. Autofs効果の...

N キロメートル以内のデータを検索する MySQL の簡単な例

地球の円周率と半径、検索ポイントの経度と緯度から、検索ポイントと検索データテーブル間の距離はNキロメ...

MySQL マルチマスターと 1 スレーブのデータバックアップ方法のチュートリアル

概要いずれかのデータベースに対する操作は他のデータベースに自動的に適用され、2 つのデータベースのデ...

Macシステムをインストールした後にVMWareがフルスクリーンで表示できない問題を解決する

システム: VMTOOLs ダウンロード:リンク: https://pan.baidu.com/s/...

iPhone デバイスの WAP ページでフォントサイズが大きい問題の解決策

JavaScriptコントロールを使用したくない場合は、次の方法を試してください。 Safariブラ...

MySQL テーブルパーティションの使用法と基本原理の詳細な説明

目次パーティションテーブルとはパーティションテーブルの適用シナリオパーティションテーブルの制限パーテ...

CSS の歪んだ影の実装コード

この記事では、CSS ワープ シャドウの実装コードを紹介し、皆さんと共有します。詳細は以下の通りです...

Viteプロジェクトを作成する手順

目次序文yarn create は何をしますか?ソースコード分析プロジェクトの依存関係テンプレート構...

小規模プログラムへのデータキャッシュ機構の応用と実装

ミニプログラムデータキャッシュ関連知識データ キャッシュ: データをキャッシュして、アプレットを終了...

ハイパーリンクAタグを学ぶ

聞く: CSS を使用してハイパーリンクのスタイルを設定しましたが、ホバーしても機能しません。なぜこ...