MySQL運営ガイド

データベースの管理

MySQLへの接続

MySQLサーバーに接続

mysqlクライアントプログラムには、接続したいホスト名、接続ユーザー名、パスワードといった引数を渡すことができます。 mysqlコマンドを使ってMySQLに接続する際、引数がなければデフォルト値が使われます。デフォルトのホスト名はlocalhost、ユーザー名はUNIXのログイン名です。

mysql [-h ホスト名] [-u ユーザ名]
[-p パスワード]

-pコマンドラインでパスワードを入力する際は、オプションの直後にパスワードを入力します。たとえば、rootアカウントでnew_passというパスワードを入力する際は、次のようになります。

mysql -u root -pnew_pass

パスワードを指定する-pオプションに値を渡さなかった場合は、次のようにコマンドラインからパスワードの入力を促されます。

mysql -u ユーザ名 -p
Enter password: ********

セキュリティ的にコマンドラインでパスワードを入力するのは望ましくないので、上記のように-pオプションに引数を渡さずに、Enter
passwordと入力を促されてから入力するようにしたほうがよいでしょう。

Unix系OSのログインユーザーがrootの場合、以下のコマンドはどれも同じ意味になります。

mysql -h localhost -u root
mysql -h localhost
mysql -u root
mysql


管理者パスワードの設定

rootのパスワード設定

MySQLをインストールすると、自動的にrootという特殊なユーザが作成されます。rootは、UNIX系OSなどで管理ユーザのアカウント名として使われていますが、MySQLのユーザアカウントはOSのユーザアカウントとは別のものです。ただし、MySQLへのログイン時にユーザ名が指定されていないときは、現在のログインしているユーザ名をMySQLのユーザー名としてログインを試みてくれます。

初期状態のrootはパスワードが設定されていないので、まずはmysqlにログインし、rootのパスワードを設定します。

rootでmysqlにログイン

アカウントrootでmysqlにログインするには、-uオプションでアカウント名を指定します。

mysql -u root

パスワードを設定

ログインが済んだら、SET PASSWORD構文を使ってrootのパスワードを設定しましょう。

SET PASSWORD FOR root=PASSWORD('新しいパスワード');

mysqladminでrootのパスワード設定

コマンドラインでも、mysqladminコマンドでパスワードを設定することができます。

mysqladmin -u root password 新しいパスワード
mysqladmin reload

mysqladminを使ってパスワードを設定した後は、mysqladminのreloadコマンドを実行します。これで、新しいパスワードが有効になります。


パスワード設定後のMySQLへの接続

.my.conf設定ファイルにパスワードを設定

設定ファイルにパスワードを書いておくこともできます。そうすることにより、毎回毎回コマンドラインに引数を与えなくてすむようになります。まず、自分のホームディレクトリに.my.cnfを作り、そのファイルの中の [client] セクションに接続用のパラメターを記述します。

[client]
host=host_name
user=user_name
password=your_pass

.my.cnfファイルはグループやその他のユーザーが読み書きできないようにしましょう。ファイルのパーミッションは 400 か 600 に設定します。


知っておくと便利なキー操作

mysqlのコマンドプロンプトのキー操作一覧です。

キー 説明
[←] カーソルを左に移動
[→] カーソルを右に移動
[↑] 前のSQL文やコマンドを表示(ヒストリ)
[↓] 後のSQL文やコマンドを表示(ヒストリ)
[Ctrl]+[A] カーソルを行頭に移動
[Ctrl]+[E] カーソルを行末に移動
[DEL] 一文字削除
[BS] カーソルの前の一文字を削除
[Tab] 途中まで入力したSQL構文や、フィールド名を補完

関連記事