管理者がユーザーのアクセス権を設定する際にユーザー用のデータベースを作成した場合、ユーザーはそのデータベースを使用し始めることができます。そうでない場合は、ユーザー自身で作成する必要があります。
mysql> CREATE DATABASE menagerie;
Unix の場合、SQL
キーワードとは異なり、データベース名では大文字と小文字が区別されるため、このデータベースは常に
menagerie
と表記する必要があり、Menagerie
や MENAGERIE
などの異なる表記は使用できません。これはテーブル名にも当てはまります。(Windows
の場合、この制限は適用されませんが、データベースとテーブルの表記は
1
つのクエリー内では統一する必要があります。ただし、さまざまな理由から、データベースの作成時に使用した表記を常に使用することをお勧めします。)
データベースの作成時に次のようなエラーが表示される場合があります。 ERROR 1044 (42000): Access denied for user 'monty'@'localhost' to database 'menagerie' これは、ユーザーのアカウントには必要な権限がないことを示しています。これについては管理者に問い合わせるか、The MySQL Access Privilege Systemを参照してください。
データベースを作成しても、そのデータベースを使用するには明示的に選択する必要があります。menagerie
を現在のデータベースにするには、次のコマンドを使用します。
mysql> USE menagerie
Database changed
データベースの作成は 1
回だけ必要ですが、使用するには
mysql
セッションを開始するたびにデータベースを選択する必要があります。そのためには、例のように
USE
ステートメントを発行します。または、mysql
を起動するときにコマンドラインでデータベースを選択できます。必要な接続パラメータをすべて指定したあとに、データベースの名前を指定します。例
:
shell>mysql -h
Enter password:host
-uuser
-p menagerie********
このコマンド内の
menagerie
はパスワードではありません。コマンドラインで
-p
オプションのあとにパスワードを入力する場合は、間にスペースを入れずに入力する必要があります
(たとえば、-p
mypassword
ではなく、-pmypassword
)。ただし、コマンドラインにパスワードを入力することは、同じマシンにログインしているほかのユーザーに覗き見られるおそれがあるため、お勧めできません。
SELECT
DATABASE()
を使用すると、現在どのデータベースが選択されているかをいつでも調べることができます。