MySQL 資料一覧

管理コマンドの種類

2007/12/19更新

対応バージョン: 5.0.51

MySQLの管理コマンドには以下のようなものがある。

mysqladmin

MySQLの管理全般を行う。

サブコマンドを指定することにより様々な管理作業が行える。

以下、サブコマンドの一例を示す。

variables

サーバのインストール状況を表示する。

# mysqladmin variables
+--------------------------+-------------------------+
| Variable_name            | Value                   |
+--------------------------+-------------------------+
| auto_increment_increment | 1                       |
| auto_increment_offset    | 1                       |
| automatic_sp_privileges  | ON                      |
| back_log                 | 50                      |
| basedir                  | /usr/local/mysql/       |
:
| version                  | 5.0.51-log              |
| version_comment          | Source distribution     |
| version_compile_machine  | i686                    |
| version_compile_os       | redhat-linux-gnu        |
| wait_timeout             | 28800                   |
+--------------------------+-------------------------+

password

MySQL内のユーザにパスワードを設定する。

# mysqladmin password -u <ユーザ> <パスワード>

mysqlshow

DB/テーブルの一覧や内容を表示する。

DBの一覧を表示する

# cd /usr/local/mysql/var
# mysqlshow
+--------------------+
|     Databases      |
+--------------------+
| information_schema |
| mysql              |
| test               |
+--------------------+

特定のDBのテーブル一覧を表示する

# mysqlshow mysql
Database: mysql
+---------------------------+
|          Tables           |
+---------------------------+
| columns_priv              |
| db                        |
| func                      |
| help_category             |
| help_keyword              |
| help_relation             |
| help_topic                |
| host                      |
| proc                      |
| procs_priv                |
| tables_priv               |
| time_zone                 |
| time_zone_leap_second     |
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |
+---------------------------+

mysql

データベース内のデータにアクセスする。

SQLの指定はいったんDBに接続して専用プロンプトにて行うか、-eオプションを使ってコマンドラインからそのまま記述する。

# mysql mysql
mysql> SELECT Host,Db,User FROM db;

+------+---------+------+
| Host | Db      | User |
+------+---------+------+
| %    | test    |      | 
| %    | test\_% |      | 
+------+---------+------+

上記と同じ結果が以下のようにしても得られる。

# mysql -e "SELECT Host,Db,User FROM db" mysql

その他、一般のDBMSと同じように様々な情報にアクセスできる。

以下、一例を示す。

データベース一覧を表示

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema | 
| mysql              | 
| test               | 
+--------------------+

使用するデータベースを切り替える

mysql> USE test
Database changed

現在のデータベースを表示

mysql> SELECT DATABASE();
+------------+
| DATABASE() |
+------------+
| test       | 
+------------+

テーブル一覧を表示

mysql> SHOW TABLES;
+-----------------+
| Tables_in_mysql |
+-----------------+
| foo             | 
| bar             | 
| com             | 
+-----------------+

システム変数の内容を表示

mysql> SELECT VERSION(), CURRENT_DATE(), NOW();
+------------+----------------+---------------------+
| VERSION()  | CURRENT_DATE() | NOW()               |
+------------+----------------+---------------------+
| 5.0.51-log | 2007-12-13     | 2007-12-13 16:57:08 | 
+------------+----------------+---------------------+

計算機として利用

mysql> SELECT SIN(PI()/4), (4+1)*5;
+------------------+---------+
| SIN(PI()/4)      | (4+1)*5 |
+------------------+---------+
| 0.70710678118655 |      25 | 
+------------------+---------+