首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

Windows 下 MySQL 批量執行 SQL 腳本檔案的兩種方法

     編輯:MySQL 綜合教學

在資料庫遷移或初始化時,常需批量執行多個 SQL 檔案。本文提供 Windows 環境下兩種實用做法:單檔直接導入與多檔 source 串聯,並附上可直接修改的批次檔範例。

方法一:單一 SQL 檔直接導入

建立 run_sql.bat,內容如下:

@echo off
:: 1. 指定 MySQL 安裝路徑
D:
cd D:\MySQL\MySQL Server 5.6\bin

:: 2. 設定連線參數
set db=vp
set userName=root
set password=root

:: 3. 指定要執行的 SQL 檔案
set sqlpath=E:\00.sql

:: 4. 執行導入
:: -f :遇錯誤繼續執行
:: --default-character-set=gbk :指定編碼,需與資料庫編碼一致
mysql -f -u %userName% --password=%password% %db% ^< %sqlpath% --default-character-set=gbk

:: 5. 暫停視窗方便查看結果
pause

方法二:多個 SQL 檔串聯執行

將 00.sql 改寫為主控檔,內容僅包含 source 指令:

source E:\01.sql
source E:\02.sql
source E:\03.sql
source E:\04.sql
source E:\05.sql

再以方法一的批次檔執行 00.sql 即可依序跑完所有腳本。

進階技巧

  • 編碼問題:若資料庫為 UTF-8,請將 gbk 改為 utf8 或 utf8mb4。
  • 路徑含空白:路徑建議用雙引號包裹,如 set sqlpath="E:\My Project\00.sql"。
  • MySQL 8.0+:PASSWORD() 函式已移除,密碼設定請改用 ALTER USER 或直接在命令列輸入。

常見錯誤排查

現象可能原因解決方式
Access denied帳號/密碼錯誤或 host 不匹配確認 user@host 權限,必要時 FLUSH PRIVILEGES
Unknown database%db% 拼錯或未建立先在 MySQL 執行 CREATE DATABASE
編碼亂碼導入編碼與資料庫不符統一使用 --default-character-set=utf8mb4

善用批次檔與 source 指令,即可輕鬆實現 Windows 下 MySQL 腳本的自動化批量執行。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved