bashでMySQLのselect結果を出力する方法
bashでMySQLのselect結果を出力する方法を紹介します。
1.問題点
MySQLで次のようなデータベース・テーブルを作成し、2件のデータをinsertしました。
mysql> describe foo;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| name | varchar(32) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
mysql> select * from foo;
+------+------+
| id | name |
+------+------+
| 1 | aaa |
| 2 | bbb |
+------+------+
2 rows in set (0.00 sec)
が、このデータをbashで出力する方法が分かりません。
ということで、bashでMySQLのselect結果を出力する方法を紹介します。
2.bashでMySQLのselect結果を出力する
bashでMySQLのselect結果を出力するには次のようにします。
#!/bin/sh
server="localhost"
database="test"
user="root"
pass="[パスワード]"
sql="select * from foo"
result=`mysql -h $server -D $database -u $user -p"$pass" -N -e "${sql}"`
echo "$result"
実行結果
# ./test.sh
1 aaa
2 bbb
Posted by yujiro このページの先頭に戻る
- MySQLのrootログインで「Access denied for user 'root'@'localhost' (using password: YES)」に遭遇した場合の対処
- mysqlやmysqldumpで「 [Warning] Using a password on the command line interface can be insecure.」という警告が表示される場合の対処
- MySQL(phpMyAdmin)でエラー#1089になる場合の対処
- MySQLで「The used SELECT statements have a different number of columns」となる場合の対処
- mysqldumpで「Error: 'Access denied; you need (at least one of) the PROCESS privilege(s) for this operation' when trying to dump tablespaces」となる場合の対処
- SSHポートフォワーディングでMySQLに接続する方法
- Windows向けMySQL管理クライアント「HeidiSQL」
- WindowsにMySQL(zip版)をインストールする
- MySQLのmax_user_connectionsについて
- phpMyAdminでインポートできない大きなファイルを一気にインポートできる「BigDump」
- phpMyAdmin で MySQL のストレージエンジンを MyISAM から InnoDB に変更する方法
トラックバックURL
コメントする
greeting