5章-MySQLユーティリティの使用方法

5296 ワード

MySQL Workbenchの使用


MySQL Workbenchは、MySQL 5.0からMySQL GUIツールとして正式に提供されています.この時点ではウィンドウ機能のみが提供され、リリース5.1以降は他のオペレーティングシステムのサポートが開始されます.現在、バージョン8.0をサポートしています.
MySQL Workbenchの主な機能は以下の通りです.
  • データベース接続
  • インスタンス管理
  • データベースアカウント管理
  • データベースエクスポート/インポート
  • 転送/リバースエンジニアリング機能
  • データベースモデリング機能
  • SQLエディタ
  • MySQL動作、
  • ヴィジェ付き

    接続ウィンドウ



    MySQL Connectionウィンドウ.簡単に言えば、接続するサーバ、ユーザー、ポートを選択して接続を試みるウィンドウです.
    接続方式はTCP/IP、ローカルsocket/PIpe、TCP/IP over SSHの3種類があり、主にTCP/IPデフォルト値を選択します.Hostnameのデフォルト値はlocalhost(127.0.0.1)で、外部データベースに接続するには、対応するIPを書くだけです.ポート番号は基本3306ですが、安全のため変更されます.UsernameとPasswordと書いて接続は終了です.

    SQL文字属性


    ナビゲータの「Schemes」タブを使用してSQL文を自動的に生成します.shopdbからmemberTBLテーブルのcreate table構文をロードしたいとしますか?

    Send to SQL Editor>Create Statementを選択すると、MemberTBLテーブルを生成するクエリー文が自動的に生成されます.このほか、select/insert/update/deleteなどの構文フォーマットも使用できます.(いい方法らしい)

    MySQLの管理


    ナビゲータの[管理]タブを使用してMySQLを管理します.現在接続されているサーバのステータスを知るには、「Server Status」を選択します.現在のサーバの動作状態、ポート、環境ファイルパス、メモリ状態、CPUの使用状況などを確認できます.

    クライアント接続(Client Connection)を選択して、接続されているクライアントが現在の状態とスリープ状態にあるかどうかを確認します.

    User and PrvilegesはMySQLユーザーを管理できます.

    MySQLインスタンス


    MySQLサーバとは、ハードディスクにインストールされたプログラムのことで、MySQLインスタンスとは、プログラムがコンピュータのバックグラウンドでサービスを提供している状態のことです.ただし、一般的にMySQLサーバ、インスタンス、サービスは同じです.
    MySQLサーバの現在の稼働状態はStartup/Shuttdownで確認できます.

    サーバログは、サーバに記録されたエラーや警告などのログをチェックします.

    Option FileはMySQLのコアプロファイルmyです.GUIでiniファイルの内容を表示します.

    Performance


    Dashboardは、ネットワーク、MySQLサーバ、およびInnoDBのステータスをグラフィカルに表示します.

    Performance Reportsでは、長い時間で入力するファイル、高価なクエリー文、データベース統計など、結果をクエリーして出力できます.

    外部MySQLサーバの管理


    実際の操作では、Windowsを使用するMySQLよりもLinuxを使用するMySQLの方が多いです.ただし、Linuxのほとんどはコマンドモードでのみ使用されるため、Workbenchは使用できません.
    しかし、Workbenchがまったく使用できないという意味ではありません.

    LinuxにMySQLサーバーをインストールし、WindowsにMySQL Workbenchをインストールし、Linuxに3306ポートを開き、MySQL外部接続の優先パラメータを設定すると、ウィンドウでWorkbenchを使用できます.
    その利点は便利であるが、この場合、安全性にかなり注意する必要があるという欠点がある.後で時間があれば、AWSを利用してインスタンス作成後にウィンドウから接続する方法を整理します.(試したことはありますが、まあまあです)

    ユーザー管理


    これまでMySQL管理者rootに接続してきました.ただし、実際の作業では、rootではなく個別のユーザーアカウントを作成し、管理に一部の権限のみを割り当てる必要があります.

    ユーザーとロール/権限を実験で管理します.ここでは、Workbenchを使用して管理する方法について説明します.
    [管理]タブで、[ユーザー]と[権限]を選択し、[アカウントを追加]をクリックし、directorアカウントを作成します.Limit to Hostsマッチングは、特定のIPアドレスのみを指定できます.すると、このIPアドレス以外のコンピュータは、現在作成されているユーザに接続できなくなる.%は、どこでも接続可能であり、安全性が悪いことを意味します.

    Account Limitsを表示すると、最大クエリー数、最大更新数、1時間あたりの最大接続数、リアルタイム同時接続最大数などを設定できます.0は特に制限がないことを示します.

    管理事務所はMySQL自身の権限を設定できます.DBAを選択すると、すべての権限を付与するためにチェックされます.(グローバル権限の可能性があります)

    Shema Prvilegesはモードによって許可することができる.

    このようにWorkbenchによってユーザ作成や権限付与/ロール割り当てが行われているが,実際には以下のようにSQL文を用いて処理されることが多いため,いずれにしても参考にすることが望ましい.
    create user staff_id@'%' identified by 'staff_password';
    grant select,insert,update,delete on shopdb.* to staff_id@'%';
    grant select on employees.* to staff_id@'%';