プログラミング逆引き辞典

~ 多言語対応のプログラミングレシピ ~

MySQLコマンド集

■MySQLにログイン(ルートユーザー)

mysql -u root

 
 


■任意のユーザーでログイン

mysql -u <ユーザー名> -p <データベース名>

 
 


■データベース表示

show databases;

 
 


■データベース作成

create database <データベース名>;

※下記は元々入っているものなので絶対に消さない
・information_schema
・mysql
・performance_schema
 
 


■データベース削除

drop database <データベース名>;

 
 


■データベース選択

use <データベース名>;

 
 


■現在選択されているデータベースの確認

select database();

 
 


■現在選択されているユーザーの確認

select user();

 
 


■作業ユーザー作成

create user <ユーザー名>@<ホスト名> identified by '<パスワード>';

 
 


■権限付与 ※全ての権限

grant all on <データベース名>.* to <ユーザー名>@<ホスト名>;

 
 


■権限確認

show grants for <ユーザー名>@<ホスト名>;

 
 


■ユーザー一覧

select user, host from mysql.user;

 
 


■折り返し無しに設定

pager less -n -i -S

出力結果を折り返しせずにlessで見れる
カーソルキーで左右の移動ができるので便利
 
※オプションの説明
n 行数計算をせずに高速化
i 検索時に大文字・小文字の区別をしない
S 折り返ししない
 
 


■ユーザー削除

drop user <ユーザー名>@<ホスト名>;

 
 


■外部SQLを読み込み

source .<SQLファイル名>
\(バックスラッシュ). .<SQLファイル名>

 
 


■テーブル作成例 ※主キー、自動連番

create table test (id int primary key auto_increment, name varchar(20));

 
 


■ユーザーにパスワードを設定

set password for <ユーザー名> = '<パスワード>'

 
 


■論理テーブル名付与

create table test (id int) comment 'テスト';

 
 


■論理カラム名付与

create table test (id int comment '論理名');

 
 


■カラム追加

ALTER TABLE <テーブル名> ADD <カラム名> <型>;

 
 


■論理名付きカラム追加(指定カラムの後)

ALTER TABLE <テーブル名> ADD <追加カラム> 型 COMMENT <'論理名'> AFTER <指定カラム>;

 
 


■カラム名変更

ALTER TABLE <テーブル名> CHANGE <変更前カラム> <変更後カラム> <型>;

 
 


■論理カラム名変更

ALTER TABLE <テーブル名> MODIFY <変更カラム> 型 COMMENT <'論理名'>;

 
 


■オートインクリメント初期化

ALTER TABLE <テーブル名> AUTO_INCREMENT = 1;

 
 


■カラム削除

ALTER TABLE <テーブル名> DROP <カラム名>;

 
 


■テーブル名変更

RENAME TABLE <変更前のテーブル名> TO <変更後のテーブル名>;