ShellScript から MySQL コマンドを実行する
こんにちは、 @kz_morita です。
mysql で SQL を実行する場合、mysql-client から実行するケースが殆んどだと思いますが、ShellScript から実行できるようにしておくと色々と自動化できたり、何かと便利なので方法についてまとめます。
環境 ローカルで以下のような環境を作って試しました。
docker-compose.yml version:"3.9"services:mysql:image:mysql:8.0.28container_name:mysql-containerports:- "3306:3306"environment:MYSQL_ROOT_PASSWORD:rootMYSQL_DATABASE:samplevolumes:- ./my.cnf:/etc/mysql/conf.d/my.cnfmy.cnf [mysqld] character_set_server = utf8mb4 collation_server = utf8mb4_ja_0900_as_cs [mysql] default-character-set = utf8mb4 [client] default-character-set = utf8mb4 以下のように接続できます。
$ mysql -h 127.0.0.1 -P 3306 -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 8Server version: 8.0.28 MySQL Community Server - GPL Copyright (c) 2000, 2023, Oracle and/or its affiliates.