mysql5.6参考手册中如下解释:
MySQL account names consist of a user name and a host name. This enables creation of accounts for users with the same name who can connect from different hosts.
也就是说mysql的账号由一个用户名和主机名来组成,用来区分不同主机上的相同用户名。
Syntax for account names is 'user_name'@'host_name'.
An account name consisting only of a user name is equivalent to 'user_name'@'%'. For example, 'me' is equivalent to 'me'@'%'.
The user name and host name need not be quoted(引用) if they are legal(合法) as unquoted identifiers. Quotes are necessary to specify a user_name string containing special characters (such as “-”), or a host_name string containing special characters or wildcard(通配符) characters (such as “%”); for example, 'test-user'@'%.com'.
Quote user names and host names as identifiers or as strings, using either backticks (“`”), single quotation marks (“'”), or double quotation marks (“"”).(使用单引号或双引号)
The user name and host name parts, if quoted, must be quoted separately. That is, write 'me'@'localhost', not'me@localhost '; the latter is interpreted as 'me@localhost '@'%'.
A reference to the CURRENT_USER or CURRENT_USER() function is equivalent to specifying the current client's user name and host name literally.
详见:http://dev.mysql.com/doc/refman/5.6/en/account-names.html