MySQLを操作するためのコマンド一覧です。
よく使う割にはど忘れしてしまうのでメモ的な意味をこめて。歳かな・・・
起動や終了
起動
$ mysql_safe --user=ユーザ名 &
&を付けてデーモンで起動、ユーザ名はインストールユーザ。
停止
$ mysqladmin shutdown -p
mysqlサーバを停止する。
起動や停止はyumなどでインストールするとsystemctlで操作するはずなのであまり使わないか。
$ systemctl start mysqld.service
$ systemctl stop mysqld.service
$ systemctl restart mysqld.service
自動起動設定
$ systemctl enable mysqld.service
MySQLを初期化するコマンド
MySQLを初期化
$ mysql_install_db
MySQL5.7.6以降の初期化
MySQL5.7.6くらいから初期化のコマンドが変更された
$ mysql --user=ユーザ名 --initialize
初期設定
$ mysql_secure_installation
- rootのパスワード変更
- anonymousユーザ削除
- testデータベース削除
などなどを行う。
MySQLの情報を取得
MySQLにログインして実行する。
MySQLのバージョン等の確認
mysql> STATUS
--------------
mysql Ver 14.14 Distrib 5.6.43, for Win64 (x86_64)
Connection id: 44
Current database:
Current user: root@localhost
SSL: Not in use
Using delimiter: ;
Server version: 5.6.43-log MySQL Community Server (GPL)
Protocol version: 10
Connection: localhost via TCP/IP
Server characterset: utf8
Db characterset: utf8
Client characterset: cp932
Conn. characterset: cp932
TCP port: 3306
Uptime: 33 min 37 sec
MySQLシステム変数を表示
mysql> SHOW VARIABLES
かなりの数表示される、LIKE構文が使える。
mysql> SHOW VARIABLES LIKE 'version'
+---------------+------------+
| Variable_name | Value |
+---------------+------------+
| version | 5.6.21-log |
+---------------+------------+
1 row in set (0.00 sec)
データーベースの情報確認
データベース一覧を表示
MySQL内のデータベースの一覧を表示します。
mysql> show databases;
mysql>
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
データベース情報
CREATE構文や文字コードが確認できる。
mysql> SHOW CREATE DATABASE test;
+----------+---------------------------------------------------------------+
| Database | Create Database |
+----------+---------------------------------------------------------------+
| test | CREATE DATABASE `test` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+---------------------------------------------------------------+
1 row in set (0.00 sec)
データベース内のテーブル情報を表示
テーブルのレコード数などが確認できる。
mysql> SHOW TABLE STATUS [FROM データベース名]
テーブルの情報確認
テーブルの一覧表示
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| sample |
| test |
+----------------+
テーブル情報表示
フィールド名や型などを表示する
mysql> EXPLAIN test;
+-------+----------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+----------------+------+-----+---------+-------+
| no | int(11) | YES | | 0 | |
| name | varbinary(100) | YES | | | |
+-------+----------------+------+-----+---------+-------+
2 rows in set (0.02 sec)
テーブルのCREATE構文確認
mysql> SHOW CREATE TABLE test;
+-------+-----------------------------+
| Table | Create Table |
+-------+-----------------------------+
| test | CREATE TABLE `test` (
`no` int(11) DEFAULT '0',
`name` varbinary(100) DEFAULT ''
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+-----------------------------+
MySQL操作コマンドまとめ
起動や終了、データベース情報確認などのコマンドを一覧にしました。
プログラムからMySQL利用する際にはあまり利用しませんけど。
インフラよりですね、MySQLの管理や運用などに利用できると思います。