EnterpriseZine(エンタープライズジン)

EnterpriseZine(エンタープライズジン)

テーマ別に探す

003 MySQLのクライアントプログラム

edited by DB Online   2014/02/06 00:00

 今回はMySQLサーバ上のデータの操作や管理に必要となるMySQLのクライアントプログラムについて解説します。

クライアントプログラムに共通の実行オプション

 特に利用頻度の多いMySQLのコマンドラインツールは以下の通りです。いずれのクライアントプログラムでも、実行時のオプションに--helpまたは-?をつけるとヘルプが表示されます。

コマンド名  用途
mysql MySQLサーバに対してSQLを実行
mysqladmin MySQLサーバの管理コマンドを実行
mysqlimport データをテーブルにインポート
mysqldump テーブルの内容をバックアップ

  MySQLのクライアントプログラムは、基本的にMySQLサーバに接続して各種の処理を行うため、接続に必要な情報に関するコマンドラインオプションは共通になっています。短縮型は大文字小文字も判別されますので注意してください。このほか「MySQL事始」第2回で説明した文字コードに関する設定も重要なオプションです。

オプション名  短縮型  デフォルト値 概要
--host -h localhost MySQLサーバが稼働するマシンのホスト名またはIPアドレス
--protocol なし  TCP  通信プロトコル TCP, SOCKET, PIPE, MEMORYのいずれかを指定
--port -P 3306 MySQLサーバが利用するTCP/IPのポート番号
--compress -c なし 通信プロトコルの圧縮

  これらのオプションはコマンドの引数として設定できるほか、「MySQL事始」第2回の文字コードの設定のように、設定ファイル(デフォルトではmy.cnfまたはmy.ini)に記述しておくこともできます。

                          MySQLの設定ファイルの例
                

 [client]

 # すべてのクライアントプログラムに適用される設定

 # ここでは文字コードにutf8mb4(4バイトUTF8)を指定

 default-character-set=utf8mb4

 

 [mysql]

 # mysqlコマンドのオプションを設定

 # エラー発生時にビープ音を鳴らさない

 no-beep

 

 [mysqldump]

 # mysqldumpコマンドのオプションを設定

 # サーバとの通信を圧縮

 compress

 MySQL 5.6から加わった重要なオプションがlogin-pathです。従来のMySQLサーバへの接続方法では--userまたは-uオプションでユーザ名、--passwordまたは-pオプションでパスワードを指定していました。この方法では毎回パスワードを入力する必要があります。設定ファイルにユーザ名とパスワードをあらかじめ設定しておくことも可能ですが、パスワードは平文で格納されていたためセキュリティ上の観点からは望ましくありません。

 そこでMySQL 5.6には、mysql_config_editorコマンドが新たに用意され、あらかじめパスワードを含む接続情報を暗号化されたファイルに格納しておき、接続時にはlogin-pathで指定した名称の接続情報を利用することが可能となりました。下記では接続情報名がfoobar、MySQLサーバが稼働するホストの名称がfoobar.mysql.com、そしてユーザ名がscottの接続情報を作成しています。”Enter password:“の表示の後にscottのパスワードを入力します。ここで作成された接続情報は、ユーザのホームディレクトリの.mylogin.cnfというファイルに暗号化されて格納されています。mysql_config_editorコマンドのprintで表示してもパスワードそのものは表示されません。

mysql_config_editorによる接続情報の作成と確認方法
mysql_config_editorによる接続情報の作成と確認方法

 mysql_config_editorおよび--login-pathオプションの詳細は下記URLを参照してください。 http://dev.mysql.com/doc/refman/5.6/en/mysql-config-editor.html

※この続きは、会員の方のみお読みいただけます(登録無料)。


※この続きは、会員の方のみお読みいただけます(登録無料)。


著者プロフィール

  • 梶山隆輔(カジヤマリュウスケ)

    日本オラクル株式会社 MySQL Global Business Unit Asia Pacific & Japan担当 MySQL Principal Sales Consultant オラクル社において、MySQLのお客様環境への導入支援や製品の技術解説を担当するセールスコンサルタントチームのアジア太平洋地域リーダー。多国籍なMySQL部門にて、台湾、オーストラリア、インドに在籍するチームメンバーを束ね、アジア太平洋地域の25以上の国や地域でのMySQL普及やビジネスの拡大をミッションとする。  

バックナンバー

連載:MySQLステップアップ講座
All contents copyright © 2007-2022 Shoeisha Co., Ltd. All rights reserved. ver.1.5