登录MySQL后如何查看用户帐户?

时间:2015-04-03 21:05:33

标签: mysql

我想查看MySQL所有用户的名字。当我尝试将这个问题大多数results are all concerned与数据库中的用户相比而不是MySQL用户。我检查了MySQL文档,但它非常详细,并没有太多帮助。如何查看MySQL用户的帐户名,更改权限以及创建新用户?

3 个答案:

答案 0 :(得分:2)

通常很简单......以root身份登录,然后执行:

select * from mysql.user;

如果你用mysql show users搜索,那么第一次点击就会得到这个。

此外,特定数据库的权限保存在mysql.db中,主机限制位于mysql.host

答案 1 :(得分:1)

仅显示用户和主机

SELECT User, Host FROM mysql.user

显示用户和权限(非常方式)

SELECT * FROM mysql.user\G;

创建用户

CREATE USER 'jeffrey'@'localhost' IDENTIFIED BY 'mypass';

授予权限(设置)

--  Grant all privileges - Specific Database, all tables
GRANT ALL ON db1.* TO 'jeffrey'@'localhost';

-- Grant only SELECT privilege - Specific Database, specific table
GRANT SELECT ON db2.invoice TO 'jeffrey'@'localhost';

-- Grant USAGE privilege All databases, all tables
GRANT USAGE ON *.* TO 'jeffrey'@'localhost' WITH MAX_QUERIES_PER_HOUR 90;

特权列表:

CREATE
DROP
GRANT OPTION
LOCK TABLES
REFERENCES
EVENT
ALTER
DELETE
INDEX
INSERT
SELECT
UPDATE
CREATE TEMPORARY TABLES
TRIGGER
CREATE VIEW
SHOW VIEW
ALTER ROUTINE
CREATE ROUTINE
EXECUTE
FILE
CREATE USER
PROCESS
RELOAD
REPLICATION CLIENT
REPLICATION SLAVE
SHOW DATABASES
SHUTDOWN
SUPER
ALL [PRIVILEGES]
USAGE

答案 2 :(得分:0)

执行以下查询将为您的所有MySQL用户提供:

SELECT user FROM mysql.user; 

您可能需要以管理员身份登录才能执行上述查询。如果是这种情况,请使用以下命令从终端以admin身份登录:

sudo mysql -p

此外,您还可以按如下方式创建新用户:

create user '<user name>'@'<host name>';

示例

create user 'tony'@'localhost';

根据项目的范围,您需要为此新用户提供各种权限。为此,请使用以下语法:

grant <permission type> on <database name> to '<user name>'@'<host name>';

示例

grant all on uncovery.* to 'tony'@'localhost';