了解。
「create_mysql_user.bat」 を作るね。
このバッチは:
create_mysql_user <ユーザ名>のように呼び出す<ユーザ名>を MySQLユーザ名 / パスワード/ DB名 に共通利用- パスワードには0000を追加
create_user.sqlを自動生成- その SQL を
mysql -u root -pで実行
という構造で作る。
🎯 完成版:create_mysql_user.bat
@echo off
setlocal
REM ============================================
REM Usage: create_mysql_user <username>
REM This script generates create_user.sql and
REM executes it with MySQL root user.
REM ============================================
if "%1"=="" (
echo Usage: create_mysql_user username
exit /b 1
)
set USERNAME=%1
set PASSWORD=%10000
set DBNAME=%1
echo Creating SQL file: create_user.sql ...
REM --- generate SQL file ---
(
echo CREATE DATABASE IF NOT EXISTS `%DBNAME%` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
echo CREATE USER IF NOT EXISTS '%USERNAME%'@'localhost' IDENTIFIED BY '%PASSWORD%';
echo GRANT ALL PRIVILEGES ON `%DBNAME%`.* TO '%USERNAME%'@'localhost';
echo FLUSH PRIVILEGES;
) > create_user.sql
echo.
echo Running SQL with MySQL root user...
mysql -u root -p < create_user.sql
echo.
echo Done.
endlocal
📌 動作イメージ
create_mysql_user bookkeepings
すると:
- DB →
bookkeepings - MySQLユーザ →
bookkeepings - パスワード →
bookkeepings0000 - 権限 →
bookkeepings.*に ALL PRIVILEGES - SQL →
create_user.sqlに出力して実行
🔧 必要なら追加できるオプション
- ホストを
%にして外部接続許可 - 既存ユーザのパスワード変更
- DB の DROP / 再作成
- ログ出力
- root パスワードをバッチ内で指定(非推奨)
必要なら 「バッチを token-services.com のプロジェクト構造に組み込む版」 も作れるよ。
次はどのレイヤーを進めたい?