[EMAIL PROTECTED] wrote:
Responses intermixed.  See below...

untz <[EMAIL PROTECTED]> wrote on 12/02/2005 10:43:41 PM:
<snip>
3. After logging into mysql, I created the following database:

mysql> create database music_development to 'untz'@'localhost' identified by 'paintball';

MySQL databases do not have the concept of ownership. They are all global. You only need to say:

(@mysql CLI prompt) CREATE DATABASE music_development;

and you can test to see if your create statement worked by running
(@CLI) SHOW DATABASES;

If your database is in that list, the command worked.

You appear to have mixed a CREATE DATABASE with a GRANT statement. To create a MySQL user you need to use a GRANT statement. If you want to create a MySQL user account with all normal DB privileges (but still cannot grant permission to others), this is how I would create the account and grant access the new database:

(@CLI) GRANT usage ON *.* to 'untz'@'localhost' IDENTIFIED BY 'xxxxxx';
(@CLI) GRANT ALL ON music_development to 'untz'@'localhost';
<snip>

The db name is optional with GRANT, but the table name is not, so this statement would grant rights to the *table* named music_development in the currently selected db. (Even though I know why this is so, I've always found it a little counter-intuitive, which has led me to make the same mistake a few times.) What Shawn meant to say was

  GRANT ALL ON music_development.* to 'untz'@'localhost';

which grants rights on all tables in the music_development to [EMAIL PROTECTED]

Michael

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to