インストール
ubuntuの場合(WSL可)
$ sudo apt install mysql-client
接続
WSLのUbuntu上からローカルへ接続する場合は[127.0.0.1]と指定が必要だった.
(localhostではダメだった)
長いので開発時はalias組んだ方がいい.
普通につなぐ
$ mysql -h [ホスト名] -u [ユーザ名] -p[パスワード(pとの間にスペース入れない)] [スキーマ名]
縦表示でつなぐ
縦表示(psqlでの拡張表示)で常に表示したい場合は-E
を付ける.
$ mysql -h [ホスト名] -u [ユーザ名] -p[パスワード(pとの間にスペース入れない)] [スキーマ名] -E
ページャ指定でつなぐ
とりあえずless指定してみる.
$ mysql -h [ホスト名] -u [ユーザ名] -p[パスワード(pとの間にスペース入れない)] [スキーマ名] -E --pager="less"
エンコーディング指定でつなぐ
utf8にすると
$ mysql -h [ホスト名] -u [ユーザ名] -p[パスワード(pとの間にスペース入れない)] [スキーマ名] -E --pager="less" --default-character-set=utf8
クエリ
縦表示(拡張表示)
クエリの末尾に\
Gを付けると縦表示になる.
(コマンド起動時に-Eを付けている場合はデフォルトで縦表示になる)
> SELECT * FROM users\G
編集
エディタでクエリを編集できる.
> edit
エディタ終了後に;
でクエリ実行.
データベースの一覧
> show databases;
テーブルの一覧
> show tables;
終了
> quit
コマンドの実行履歴
デフォルトでは以下にある.
~/.mysql_history
バックアップ
mysqldumpコマンドを使う.
$ mysqldump -u [ユーザ名] -p[パスワード(pとの間にスペース入れない)] -h [ホスト名] -t [スキーマ名] > [出力ファイル名]
リストア
mysqlコマンド経由で標準入力からSQLを投入するだけ.
必要であれば事前にCREATE DATABASE
を実行.
接続方法は前掲通り.
$ mysql -h [ホスト名] -u [ユーザ名] -p[パスワード(pとの間にスペース入れない)] [スキーマ名] < [リストアファイル名]