MySQLで使うコマンド
接続
mysql -h 127.0.0.1 -u root -P 3306 -ppassword
Dump
mysqldump -u username -p -h hostname --single-transaction dbname > dump.sql
code:dump.sql
mysqldump --no-data test > dump-defs.sql
# テーブルの内容をダンプしない
# レコード無し
--no-data ,-d
# CREATE DATABASE ステートメントを抑制
--no-create-db, -n
Dumpデータの切り出し。
code:sed.sql
# テーブルの位置を取得
egrep -n '^DROP TABLE IF EXISTS' dump.sql
# ダンプファイルからテーブルを切り出す。
sed -n '1442,6007p' dump.sql > tables-from-dump.sql
# 指定行を除外する
sed '1442,6007d' dump.sql > result.sql
DATETIME型
+,- で演算、<, <=比較できる
code:time.sql
NOW() DATETIME型?
検索結果をCSVで出力。
code:sh
mysql -h hostname -u user -p -D database -e "cat search.sql" \
| sed -e 's/"/""/g' | sed -e 's/^/"/g' | sed -e 's/$/"/g' | sed -e 's/\t/","/g' > result.csv
MySQLの状態確認
テーブル一覧
SHOW TABLES;