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