カスタム検索
このエントリーをはてなブックマークに追加
tomo.gif (1144 ツバツイツト)line.gif (927 ツバツイツト)line.gif (927 ツバツイツト)line.gif (927 ツバツイツト)To previous pageTo home pageMailing to me

MySQLの基本操作

Modified: 23 May 2004


ユーザの登録や削除する方法 (6 November 2004)
ユーザに権限を設定する方法 (6 November 2004)
ユーザ登録と権限設定を同時に行う方法 (6 November 2004)
パスワードを設定する方法 (6 November 2004)
ユーザを削除する方法 (6 November 2004)
ユーザの一覧を見る方法 (6 November 2004)

データベースの作成と削除 (6 November 2004)
登録されているデータベースの一覧を表示する
23 May 2004
テーブルの作成、削除、名前変更、表示をする (6 November 2004)
データベース内のテーブルの一覧を表示する23 May 2004
テーブル内のフィールドデータを表示する23 May 2004


 ユーザの登録や削除する方法 

 登録する方法

以下のコマンドでユーザを登録出来ます。

ユーザ名、パスワード、ホスト名を指定して登録します。MySQLのユーザは、ユーザ名とホスト名を組み合わせた名称(user@host)です。

mysql> use mysql;

mysql> insert into user set user="user", password=password("password"), host="host";

mysql> flush privileges;

 ホスト名
MySQLのユーザは、ホスト名とペアで識別されます。
ホスト名"localhost"は、一般にネットワークで使われる"localhost"の意味ではなく、UNIXソケットで接続するという意味です。
したがって、TCP/IPソケットで、localhostの意味でのホスト名ありませんので、サーバーのホスト名か、IPアドレス、または、"127.0.0.1"です。

 削除する方法

MySQLのユーザは、MySQL自身の"mysql" というデータベースに登録されています。

mysql> delete from mysql.user where user='username' and host='host';

または、以下のように、DBを選択しておいてから実行することも可能です。

mysql> use mysql;

mysql> delete from user where user='username' and host='host';


 ユーザに権限を設定する方法 

権限範囲と、データベースやテーブル名を、ユーザ名を指定して設定します。

mysql> grant all on dbname.tablename to user@host;

 権限範囲

ALL または ALL PRIVILEGES すべての権限を設定する
USAGE すべての権限をなしにする

もっと細かく指定できます。詳細は、以下を参照ください。
http://dev.mysql.com/doc/mysql/ja/GRANT.html

 データベースとテーブル

*.* すべてのデータベースとテーブル
DB.* "DB"という名称の、すべてのテーブル
DB.TBN "DB"という名称の、"TBN"という名称のテーブル

 ユーザ登録と権限設定を同時に行う方法 

登録されていないユーザを指定して、権限設定を行うと、ユーザ登録も同時に行えます。


 パスワードを設定する方法 

以下のコマンドでパスワードの設定が出来ます。

mysql> set password for user@host = password('password');

ユーザを指定して接続した場合は、以下のようにユーザ名を省略できます。

mysql> set password = password('password');

 ユーザの一覧を見る方法 

MySQLのユーザは、MySQL自身の"mysql" というデータベースに登録されています。

mysql> select * from mysql.user;

または、以下のように、DBを選択しておいてから実行することも可能です。

mysql> use mysql;

mysql> select * from user;


 データベースの作成と削除 

 データベースの作成

シェルからは、以下のコマンドで行います。

# mysqladmin create dbname;

mysqlを起動してからは、以下のコマンドで行います。

mysql> create database dbname;

 データベースの削除

mysql> drop database dbname;

登録されているデータベースの一覧を見る

以下のコマンドで、登録されているデータベースの一覧を表示させることができます。

# mysqlshow
+-----------+
| Databases |
+-----------+
| mysql     |
| test      |
| tomoac    |
+-----------+
#

"mysql"と"test"は、MySQLをインストールしたら作られています。"tomoac"は、私が "xoops" 用に作ったデータベースです。

mysqlを起動してからは、以下のコマンドで行います。

mysql> show databases;
+------------+
| Database   |
+------------+
| DB_MEMBERS |
| mysql      |
| test       |
+------------+
3 rows in set (0.00 sec)

mysql>

 テーブルの作成、削除、名前変更、表示をする 

 テーブルの作成

mysql> create table tablename (colname1 type, colname2 type, ....);

 テーブルの削除

mysql> drop table tablename;

 テーブル名の変更

mysql> alter table tablename rename as newtablename;

 テーブルの内容を表示する

mysql> desc tablename;
+--------+--------------+------+-----+---------+----------------+
| Field  | Type         | Null | Key | Default | Extra          |
+--------+--------------+------+-----+---------+----------------+
| sn     | int(11)      |      | PRI | NULL    | auto_increment |
| serial | varchar(50)  |      |     |         |                |
| age    | varchar(59)  | YES  |     | NULL    |                |
| sex    | varchar(10)  | YES  |     | NULL    |                |
| email  | varchar(199) |      |     |         |                |
+--------+--------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)

mysql>

データベース内のテーブルの一覧を見る

データベースに接続してから表示します。

mysql> show tables;
+-----------------+
| Tables_in_mysql |
+-----------------+
| columns_priv    |
| db              |
| func            |
| host            |
| tables_priv     |
| user            |
+-----------------+
6 rows in set (0.00 sec)

mysql>


コマンドで見る方法

登録済の "mysql" 内のテーブルの一覧を見てみます。

# mysqlshow mysql
Database: mysql
+--------------+
|    Tables    |
+--------------+
| columns_priv |
| db           |
| func         |
| host         |
| tables_priv  |
| user         |
+--------------+
#

登録済の "test" 内のテーブルの一覧を見てみます。

# mysqlshow test
Database: testしょ
+--------+
| Tables |
+--------+
+--------+
#

テーブル内のフィールドデータを表示する

mysql> show fields from db;
+-----------------+-----------------+------+-----+---------+-------+
| Field           | Type            | Null | Key | Default | Extra |
+-----------------+-----------------+------+-----+---------+-------+
| Host            | char(60) binary |      | PRI |         |       |
| Db              | char(64) binary |      | PRI |         |       |
| User            | char(16) binary |      | PRI |         |       |
| Select_priv     | enum('N','Y')   |      |     | N       |       |
| Insert_priv     | enum('N','Y')   |      |     | N       |       |
| Update_priv     | enum('N','Y')   |      |     | N       |       |
| Delete_priv     | enum('N','Y')   |      |     | N       |       |
| Create_priv     | enum('N','Y')   |      |     | N       |       |
| Drop_priv       | enum('N','Y')   |      |     | N       |       |
| Grant_priv      | enum('N','Y')   |      |     | N       |       |
| References_priv | enum('N','Y')   |      |     | N       |       |
| Index_priv      | enum('N','Y')   |      |     | N       |       |
| Alter_priv      | enum('N','Y')   |      |     | N       |       |
+-----------------+-----------------+------+-----+---------+-------+
13 rows in set (0.00 sec)

mysql>

To previous pageTo home pageMailing to meJump to Top of pageline.gif (927 ツバツイツト)line.gif (927 ツバツイツト)tomo.gif (1144 ツバツイツト)
カスタム検索



このエントリーをはてなブックマークに追加