MariaDB/MySQL

[MySQL/MariaDB] mysqlコマンドでバッチ処理・直接実行

2018年8月16日

こんにちは!土門大貴(daikidomon)です。

MySQL・MariaDBの「mysql」コマンドでバッチ処理直接実行をさせる方法を紹介します。

この方法を使用することでシェルスクリプトやMS DOSからバッチ処理を行え、スケジューリングして定期実行させることもできます。

mysqlコマンドはMySQL・MariaDBのCUIで、SQL文だけでなく強力なメタコマンドもある非常に便利なコマンドです。

DBはインストールされている前提ですので、MariaDB・MySQLのインストール方法は下の記事を参考にしてください。

LinuxへのMariaDBのインストールとデータベース作成

こんにちは!土門大貴(daikidomon)です。 Linux上でMariaDBをインストールする手順とデータベース作成 ...

続きを見る

SQLファイル等をバッチ処理

「mysql」コマンドでSQLファイル等をバッチ処理する時にするには、「<」を使用します。

mysql [db_name] -u [username] -p[password] < [batch_file]

ファイル名の拡張子の指定はなく、通常のテキスト形式でSQL文を記載すれば使用できます。

以下が実行例です。

$ cat batch.sql
select * from test001.tab001;

$ mysql test001 -u test001 -ppassword < batch.sql
col01 col02
00000 00000
00001 00001
00002 00002
00003 00003

インラインでSQLを直接実行

「mysql」コマンドでSQL文を直接実行するには、「-e」オプションを使用します。

mysql [db_name] -u [username] -p[password] -e "SQL Statement"

以下が実行例です。

$ mysql test001 -u test001 -ppassword -e "select * from test001.tab001;"
+-------+-------+
| col01 | col02 |
+-------+-------+
| 00000 | 00000 |
| 00001 | 00001 |
| 00002 | 00002 |
| 00003 | 00003 |
+-------+-------+
created by Rinker
¥3,850 (2020/08/20 11:46:56時点 Amazon調べ-詳細)

関連記事

-MariaDB/MySQL

Copyright© スタートアップIT企業社長のブログ , 2020 All Rights Reserved.