mysqlコマンド

ログイン# localhostのMySQLサーバに接続する場合
$ mysql -u [ユーザー名] -p

# localhostのMySQLサーバに接続する場合(ワンラインでパスワードまで渡す)
$ mysql -u [ユーザー名] -p[パスワード ※ 平文で渡すとコマンド履歴にパスワードが載ってしまうので避けましょう]

# 外部MySQLサーバに接続する場合
$ mysql -u [ユーザー名] -p -h [host名] -P [ポート番号]

ログアウト
mysql > \q
mysql > quit
mysql > exit

ヘルプ
mysql > help
mysql > \h

ユーザー情報取得
mysql > SELECT Host, User, Password FROM mysql.user;


ユーザーの追加
mysql > create user `testuser`@`localhost` IDENTIFIED BY ‘password’;


ユーザーにDB操作権限を付与
mysql > grant all privileges on test_db.* to testuser@localhost IDENTIFIED BY ‘password’;


データベース一覧の表示
mysql > show databases;


データベースの作成追加
mysql > create database test_db;


テーブル一覧の表示
mysql > show tables;


詳細 表示
mysql > show table status;


全テーブルから特定のフィールド検索
mysql > SELECT table_name, column_name FROM information_schema.columns WHERE column_name = [検索条件];


テーブルの作成
mysql > CREATE TABLE [テーブル名] (
[フィールド名] [データ型] [オプション]
) ENGINE=[InnoDB/MyISAM] DEFAULT CHARSET=[文字コード];


テーブルの削除
mysql > DROP TABLE [テーブル名]

 —– IF EXISTS を追加することでTABLEが存在する時のみ DROP TABLE 文を実行する
mysql > DROP TABLE IF EXISTS [テーブル名]


全データベースをダンプ=バックアップ
mysqldump -u [ユーザー名] -p -x –all-databases > [出力ファイル名]


データベースを指定して、ダンプ 
mysqldump -u [ユーザー名] -p -x test_db > [出力ファイル名]
 

ダンプファイルのリストア
$ mysql -u[ユーザー名] -p new_db < [ダンプファイル名]