MySQLでよく使うコマンド

MySQLでよく使うコマンドたちを載せておきます。

 

MySQLサーバーにログインに指定できるオプションたち

オプション 用途
--passowrd=[パスワード] ログインパスワードの指定
--host=[ホスト名/IP] 接続先のホスト名/IPアドレスの指定
--port=[ポート番号] MySQLサーバーのポート番号の指定
--database=[データベース名] 使用するデータベース名の指定
mysql -u root --password=tamtam --host=127.0.0.1 --port=3306 --database=tw_ics_production < script/sql/optimaize_tables.sql

 

DB単位のエクスポート(ダンプ)

mysqldump -u ユーザ名 -p DB名 > 出力先ファイル名.sql

 

DB単位のインポート

mysql -u ユーザ名 -p DB名 < ダンプファイル名

 

ユーザの作成

GRANT ALL PRIVILEGES ON *.* TO [ユーザー名]@localhost IDENTIFIED BY '[パスワード]'

上記のようにGRANT構文を使用します。

"ALL PRIVILEGES"のところで当該ユーザのユーザの権限を指定しています。この例では全ての権限を持たせていますが、SELECTとINSERTだけできるユーザにしたい場合には"ALL PRIVILEGES"の代わりに"SELECT,INSERT"と入力します。

次に顔文字みたな"*.*"ですが、前のアスタリスクがデータベース名を指定するところで、後ろのアスタリスクがテーブル名を指定するところです。ここではワイルドカードを指定しているので全データベース・全テーブルにおいてこのユーザの権限が有効になります。

ユーザ名@の後ろが"localhost"となっていますが、これはローカルホストからのだけ接続できるユーザであることを指定しています。"localhost"の代わりに"%"を指定すればどのホストからでも接続できるユーザであることを指定できます。

 

ユーザの一覧を表示

SELECT user, host FROM mysql.user;