MySQL是一種開放源代碼的關系數據庫管理系統,它使用SQL語言進行操作,被廣泛應用于Web應用程序的后臺數據管理。在MySQL的數據庫中,系統默認有一個名為`mysql`的系統數據庫,其中存儲了MySQL的系統信息以及用戶權限管理相關的數據。而`mysql.user`表則是在`mysql`數據庫中存儲用戶賬戶的表,它決定了每個用戶對數據庫的訪問權限。
mysql>use mysql; mysql>SELECT * FROM user;
通過上述代碼,我們可以進入`mysql`數據庫,并通過SELECT語句查詢`user`表中的所有數據。查詢結果包括用戶的賬號、對應的主機地址、加密后的密碼、是否擁有某些權限等信息。MySQL的用戶權限管理非常靈活,可以通過GRANT和REVOKE命令來授予和取消用戶對數據庫的操作權限,如以下代碼所示:
mysql>GRANT SELECT,INSERT,UPDATE ON mydb.* TO 'myuser'@'localhost' IDENTIFIED BY 'mypassword'; mysql>REVOKE ALL PRIVILEGES ON mydb.* FROM 'myuser'@'localhost';
在上述代碼中,第一條命令授予了`myuser`用戶對`mydb`數據庫下的`SELECT`、`INSERT`和`UPDATE`權限,并設置了用戶的密碼;第二條命令則撤銷了`myuser`用戶對`mydb`數據庫下的所有權限。