MySQL是一種廣泛使用的關系型數據庫管理系統,而修改密碼是保障數據庫安全的一項基本措施,那么MySQL修改密碼需要什么權限呢?
首先,在修改自己的密碼時,只需要擁有修改自己用戶信息的權限即可,例如在命令行中輸入:
$ mysql -u 用戶名 -p
mysql>ALTER USER '當前用戶名'@'localhost' IDENTIFIED BY '新密碼';
以上命令只需要當前用戶有UPDATE權限,即可成功修改自己的密碼。
當需要修改其他用戶的密碼時,則需要擁有GRANT OPTION權限,這種權限必須在創建用戶時同時授權,例如:
mysql>CREATE USER '新用戶名'@'localhost' IDENTIFIED WITH mysql_native_password BY '密碼'; mysql>GRANT ALL PRIVILEGES ON 數據庫.表 TO '新用戶名'@'localhost' WITH GRANT OPTION;
以上命令創建了一個新用戶,并授權該用戶擁有對指定數據庫表的全部權限(包括GRANT OPTION),因此可以通過以下命令來修改該用戶的密碼:
mysql>SET PASSWORD FOR '新用戶名'@'localhost' = PASSWORD('新密碼');
需要注意的是,如果當前用戶不擁有GRANT OPTION權限,則無法修改其他用戶密碼,此時需要超級用戶(root)授權才能進行操作。