2015-04-03 55 views
0

我想查看所有MySQL用戶的名稱。當我嘗試谷歌這個問題與數據庫中的用戶最多results are all concerned,而不是MySQL用戶。我檢查了MySQL文檔,但它非常冗長,並沒有太多幫助。如何查看MySQL用戶的帳戶名稱,更改權限並創建新用戶?如何在登錄MySQL時查看用戶帳戶?

+0

你就不能查詢MySQL用戶表? 'SELECT user FROM mysql.user' – McWayWeb 2015-04-03 21:08:43

+0

[How to get a list of MySQL user accounts](http://stackoverflow.com/questions/1135245/how-to-get-a-list-of-mysql-用戶帳戶) – 2015-04-03 21:20:50

+0

@ nl-x還有人發現他的問題開始受到批評,他改變了問題,然後添加了自己的答案以適應新問題,這讓人感到歇斯底里?如果他能在10分鐘內回答自己的問題,爲什麼他甚至會提出這個問題呢? – McWayWeb 2015-04-03 21:38:14

回答

2

通常很簡單...以root身份登錄,然後執行:

select * from mysql.user; 

而且如果你用Google搜索上mysql show users你會得到這是第一次打擊。

此外,權利特定數據庫中mysql.db保持和主機限制是mysql.host

0

執行下面的查詢將提供你所有的MySQL用戶:

SELECT user FROM mysql.user; 

您可能需要以管理員身份登錄到執行上述查詢。如果是這樣的情況下,登錄信息作爲從終端管理通過使用下面的命令:

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'; 
0

僅顯示用戶和主機

SELECT User, Host FROM mysql.user 

顯示用戶和權限(漂亮的方式)

SELECT * FROM mysql.user\G; 

創建用戶

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

授予權限(集)

​​

名單特權:

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