MariaDB/MySQL

mysqlコマンドのオプション。MySQL・MariaDBの両方で使用可能。

2018年8月14日

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

MySQL・MariaDBの両方で使用することができる「mysql」コマンドのオプションを紹介します。

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

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

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

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

続きを見る

DBへの接続関連オプション

データベースに接続する時に使用するオプションを紹介します。

オプション説明
-D --database=db_name接続するデータベースを指定。-D オプションを指定しなくてもDBへは接続可能
-h --host=host_nameMySQL/MariaDBが稼働しているホスト名を指定
-u --user=user_nameデータベースユーザ名を指定
-p[password] --password[=password]データベースユーザのパスワードを指定
-S --socket=socket_file接続に使用するソケットファイルを指定
-P port_num --port=port_numデータベース接続時のTCP/IPポート番号を指定。デフォルトで”3060”
--protocol=(TCP|SOCKET|PIPE|MEMORY)接続に使用するプロトコルを指定
-C, --compressサーバー/クライアント間の通信を圧縮

補足ですが「-D」オプションを省略してもデータベース名を指定することが出来ます。
# -Dオプションを省略する
[root@test-server ~]# mysql testdb001 -u root -p -s
Enter password:
MariaDB [testdb001]>

# -Dオプションは指定する
[root@test-server ~]# mysql -D testdb001 -u root -p -s
Enter password:
MariaDB [testdb001]>

[MySQL/MariaDB] mysqlコマンドを使用した接続、”use”文で再接続の方法

こんにちは!土門大貴(daikidomon)です。 「mysql」コマンドを使用した「MySQL」・「MariaDB」へ ...

続きを見る

表示・出力結果を変更するオプション

表示・出力結果を変更するオプションを以下になります。

オプション説明
--prompt=prompt_formatプロンプトの表示形式を指定
-t --table問い合わせ結果を表の形式で出力。デフォルト
-N --skip-column_name問い合わせ結果に列名を出力しない
-E --vertical問い合わせ結果に垂直表示
-H --html問い合わせ結果にHTMLフォーマットで表示
-X --xml問い合わせ結果にXMLフォーマットで表示
--tee=output_file問い合わせ結果をoutput_fileに書き込む。バッチ処理時は無効化される
--pager[=pager_nome]PAGERを指定する。Windowでは使用できない

以下、表示・出力結果の例です。
# 表形式で表示デフォルト
MariaDB [testdb001]> select * from testdb001.tab001;
+------------+------------+
| col01 | col02 |
+------------+------------+
| 0000000001 | 0000000001 |
+------------+------------+
1 row in set (0.00 sec)

# 列名を非表示
MariaDB [testdb001]> select * from testdb001.tab001;
+------------+------------+
| 0000000001 | 0000000001 |
+------------+------------+
1 row in set (0.00 sec)

# 垂直表示
MariaDB [testdb001]> select * from testdb001.tab001;
*************************** 1. row ***************************
col01: 0000000001
col02: 0000000001

# HTML形式表示
MariaDB [testdb001]> select * from testdb001.tab001;
<TABLE BORDER=1><TR><TH>col01</TH><TH>col02</TH></TR><TR><TD>0000000001</TD><TD>0000000001</TD></TR></TABLE>MariaDB [testdb001]>

# XML形式表示
MariaDB [testdb001]> select * from testdb001.tab001;
<?xml version="1.0"?>

<resultset statement="select * from testdb001.tab001;" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<row>
<field name="col01">0000000001</field>
<field name="col02">0000000001</field>
</row>
</resultset>

実行を制御するオプション

オプション説明
-q --quickプロンプトの表示形式を指定
-U --safe-updates --i-am-a-dummyWHERE句を設定しないとUPDATE、DELETEを実行できないようにする

-q」オプションを使用するとキャッシュせずに結果を1行づつ順に出力するため、大量データを表示させる時に速度向上が見込めます。

ただし、ヒストリー機能が使えなくなるので注意してください。

-U」オプションを使用するとWHERE句を指定しないUPDATE、DELETE文が使用できなくなるので、オペミスしてもデータが消えなくなります。

 

 

関連記事

-MariaDB/MySQL

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