Copyright (C) 2000-2012 |
GNU Info (mysql.info)User namesMySQL User Names and Passwords ------------------------------ There are several distinctions between the way user names and passwords are used by MySQL and the way they are used by Unix or Windows: * User names, as used by MySQL for authentication purposes, have nothing to do with Unix user names (login names) or Windows user names. Most MySQL clients by default try to log in using the current Unix user name as the MySQL user name, but that is for convenience only. Client programs allow a different name to be specified with the `-u' or `--user' options. This means that you can't make a database secure in any way unless all MySQL user names have passwords. Anyone may attempt to connect to the server using any name, and they will succeed if they specify any name that doesn't have a password. * MySQL user names can be up to 16 characters long; Unix user names typically are limited to 8 characters. * MySQL passwords have nothing to do with Unix passwords. There is no necessary connection between the password you use to log in to a Unix machine and the password you use to access a database on that machine. * MySQL encrypts passwords using a different algorithm than the one used during the Unix login process. See the descriptions of the `PASSWORD()' and `ENCRYPT()' functions in Note: Miscellaneous functions. Note that even if the password is stored 'scrambled', and knowing your 'scrambled' password is enough to be able to connect to the MySQL server! MySQL users and their privileges are normally created with the `GRANT' command. Note: GRANT. When you login to a MySQL server with a command line client you should specify the password with `--password=your-password'. Note: Connecting. mysql --user=monty --password=guess database_name If you want the client to prompt for a password, you should use `--password' without any argument mysql --user=monty --password database_name or the short form: mysql -u monty -p database_name Note that in the last example the password is *NOT* 'database_name'. If you want to use the `-p' option to supply a password you should do so like this: mysql -u monty -pguess database_name On some systems, the library call that MySQL uses to prompt for a password will automatically cut the password to 8 characters. Internally MySQL doesn't have any limit for the length of the password. automatically generated by info2www version 1.2.2.9 |