3.3.1. Creating and Selecting a Database
If the administrator creates your database for you when setting
up your permissions, you can begin using it. Otherwise, you need
to create it yourself:
mysql> CREATE DATABASE menagerie;
Under Unix, database names are case sensitive (unlike SQL
keywords), so you must always refer to your database as
menagerie
, not as
Menagerie
, MENAGERIE
, or
some other variant. This is also true for table names. (Under
Windows, this restriction does not apply, although you must
refer to databases and tables using the same lettercase
throughout a given query. However, for a variety of reasons, our
recommended best practice is always to use the same lettercase
that was used when the database was created.)
Note: If you get an error such
as ERROR 1044 (42000): Access denied for user
'monty'@'localhost' to database 'menagerie' when
attempting to create a database, this means that your user
account does not have the necessary privileges to do so. Discuss
this with the administrator or see
Section 5.7, “The MySQL Access Privilege System”.
Creating a database does not select it for use; you must do that
explicitly. To make menagerie
the current
database, use this command:
mysql> USE menagerie
Database changed
Your database needs to be created only once, but you must select
it for use each time you begin a mysql
session. You can do this by issuing a USE
statement as shown in the example. Alternatively, you can select
the database on the command line when you invoke
mysql. Just specify its name after any
connection parameters that you might need to provide. For
example:
shell> mysql -h host
-u user
-p menagerie
Enter password: ********
Note that menagerie
in the command just shown
is not your password. If you
want to supply your password on the command line after the
-p
option, you must do so with no intervening
space (for example, as -pmypassword
, not as
-p mypassword
). However, putting your
password on the command line is not recommended, because doing
so exposes it to snooping by other users logged in on your
machine.