MySQLをインストールし、サービス起動するようにした後にまずすることのメモ。
- CUI (mysql)コマンドでMySQLに接続する
- MySQLのデータベースおよびテーブル一覧を見る
- MySQLのユーザ権限を作成する
- テーブルのスキーマを見る
- データベースおよびテーブルを作成する
mysqlコマンドでMySQLに接続する
Windows
Windowsでは、スタート→すべてのプログラム→MySQL→MySQL Command line clientを起動する。パスワードを聞いてくるのでインストール時に指定したパスワードを入力する。
または、任意のコマンドプロンプト上で、以下を実行する
C:\> mysql -uroot -p Enter password: ******** Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 11 Server version: 5.1.34-community MySQL Community Server (GPL) Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
MySQLのデータベースおよびテーブル一覧を見る
MySQLはユーザ権限もデータベース上のテーブルに定義されているので、先にデータベースとテーブルの情報にアクセスする手段を知っておくことにします。
データベースの一覧
MySQLは、複数のデータベースを束ね、各データベースは複数のテーブルを束ねています。データベースの一覧を見るには、mysqlクライアントのshowコマンドを使用します。
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | test | +--------------------+ 3 rows in set (0.00 sec) mysql>
データベースの使用
データベースが束ねるテーブルをアクセスするには、所定のデータベースを選択します。mysqlクライアントのuseコマンドを使用します。
mysql> use mysql; Database changed mysql>
テーブルの一覧
データベース選択後、選択したデータベースが束ねるテーブルの一覧を見るには、mysqlのshowコマンドを使用します。
mysql> show tables; +---------------------------+ | Tables_in_mysql | +---------------------------+ | columns_priv | | db | | event | : (中略) | time_zone_transition | | time_zone_transition_type | | user | +---------------------------+ 23 rows in set (0.00 sec) mysql>
MySQLのユーザ権限を作成する
使用可能な操作種類、接続可能なホストを指定してユーザ権限を作成します。
mysql> GRANT ALL PRIVILEGES ON *.* TO tom@"%" -> IDENTIFIED BY 'Lieutenant' WITH GRANT OPTION; Query OK, 0 rows affected (0.00 sec) mysql>
ALL PRIVILEGESは、すべての操作の権限を持つことを指定しています。権限対象のデータベース・テーブルは、*.*と指定した場合、任意のデータベース、テーブルを示します。作成するユーザはホスト名とともに指定します。%は任意の計算機のようです。
作成したユーザは、mysqlデータベースのuserテーブルに保持されます。
mysql> select User,Host from user; +------+-----------+ | User | Host | +------+-----------+ | root | % | | tom | % | | root | localhost | +------+-----------+ 3 rows in set (0.00 sec)
テーブルのスキーマを見る
MySQLのdescコマンドを使用します。
mysql> desc plugin; +-------+-----------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+-----------+------+-----+---------+-------+ | name | char(64) | NO | PRI | | | | dl | char(128) | NO | | | | +-------+-----------+------+-----+---------+-------+ 2 rows in set (0.00 sec)