如果多个项目使用 MySQL 并拥有自己的实例,而用户却都使用root
,那么每个项目都拥有对 MySQL 的完整操作权限,这是很糟糕的。(笔者之前就是这么干的)
创建用户并分配权限:
CREATE USER 'username'@'localhost' IDENTIFIED BY 'pwd';
-- CREATE USER 'username'@'%' IDENTIFIED BY 'pwd';
GRANT SELECT, UPDATE, DELETE, INSERT ON dbname.tablename TO 'username'@'localhost';
-- GRANT ALL ON dbname.* TO 'username'@'%';
FLUSH PRIVILEGES;
查询所有用户
SELECT * FROM mysql.user;
删除用户
DROP USER 'username';