【XAMPP】コマンドで .sql ファイルをインポートする方法(Windows & Mac対応)

.sql ファイルはMySQL 管理画面からインポートできますが、データサイズが大きすぎると管理画面からはインポートできないことがあります。
この場合はシェルやターミナルを使ってコマンドを入力すれば簡単にインポートすることができます。
この記事では「XAMPP 環境でコマンドを使って .sql ファイルをインポートする方法」を紹介します。
Windows → Mac の順番で紹介しているので、お使いの環境に合わせてお読みください。
MAMP の場合はこちら

準備
データベースは my_data という名前で作成して、sql ファイルは test.sql という名前でデスクトップに用意しています。
sql ファイルを zip 形式で用意している場合は解凍しておいてください。(通常ファイルをダブルクリックすれば解凍することができます。)

インポート方法
Windowsの場合
XAMPP のコントロールパネルにある Shell を開きます。

mysql -u root -p と入力してEnterを押します。

MySQL のパスワードを入力して Enter を押します。
パスワードを設定していない場合は何も入力せずに Enter を押します。

use データベース名 を入力してEnterを押します。
ここでは my_data というデータベースを使うので use my_data としています。

source sqlファイルのパス を入力してEnterを押します。
Shell にファイルをドラッグ&ドロップで置くと自動的にパスが入力されます。
ここではデスクトップに test.sql を置いているので source C:¥Users¥ユーザ名¥Desktop¥test.sql としています。

データの登録が終わったら exit と入力し Enter を押して終了します。

Macの場合
XAMPP 7.3.7 を使うと Failed to open file error2 となり sql ファイルのパスが認識されないエラーが出ることがあるようです。その場合は 7.2.20 をご利用ください。
ターミナルを開いて /Applications/XAMPP/xamppfiles/bin/mysql -u root -p と入力してEnterを押します。

MySQL のパスワードを入力してEnterを押します。
パスワードを設定していない場合は何も入力せずに Enter を押します。

use データベース名 を入力してEnterを押します。
ここでは my_data というデータベースを使うので use my_data としています。

source sqlファイルのパス を入力してEnterを押します。
ターミナルにファイルをドラッグ&ドロップで置くと自動的にパスが入力されます。
ここではデスクトップに test.sql を置いているので source /Users/ユーザ名/Desktop/test.sql としています。

データの登録が終わったら exit と入力しEnterを押して終了します。
