かなり古いCentOS-Bash "共有サーバー"環境で、次のコマンドを実行しました。
current_date="$(date +%F-%T)"
db_user_name_and_db_name="db-username_db-name"
war="$HOME/public_html" # Web Application Root
mkdir -p "${war}/mediawiki_general_backups"
私の質問は、PHPMyAdmin GUIから関連データベース(すべてのテーブル)をすばやくエクスポートするとファイルを取得することです.sql
。43MB。
ただし、次のようにCLUIコマンドを使用して同じデータベースをエクスポートすると、ファイルが生成されます.sql
。23MB:
mysqldump \
-u "${db_user_name_and_db_name}" \
-p "${db_user_name_and_db_name}" \
> "${war}/mediawiki_general_backups/${db_user_name_and_db_name}-${current_date}.sql"
この違いをどのように説明するのかわかりません。
答え1
クイックテストを実行するには、PhpMyadminからテーブルをエクスポートし、ターミナルで次のコマンドを使用します。
mysqldump -u $UserName -p database table > /tmp/table.sql
その後、テキストエディタを使用して2つのSQLファイルを開くと、違いをすぐに認識できます。多くのコメントと
PHPMyAdminからデータをエクスポートする方法を認識します。INSERT
たとえば、
エクスポートされたSQLには次のヘッダーがあります。
-- phpMyAdmin SQL Dump
-- version 4.0.10.20
-- https://www.phpmyadmin.net
--
-- Host: localhost
-- Generation Time: Oct 10, 2019 at 03:48 AM
-- Server version: 5.1.73-log
-- PHP Version: 5.3.3
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
ダンプされたSQLには次のヘッダーがあります。
-- MySQL dump 10.13 Distrib 5.1.73, for redhat-linux-gnu (x86_64)
--
-- Host: localhost Database: testing
-- ------------------------------------------------------
-- Server version 5.1.73-log
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;