如何创建MySQL账号并分配读写权限
创建新MySQL账号
-
首先以root用户登录MySQL:
mysql -u root -p -
创建新用户(将
username和password替换为你想要的用户名和密码):CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';如果要允许从任何主机连接(不推荐生产环境使用):
CREATE USER 'username'@'%' IDENTIFIED BY 'password';-- %表示允许从任何主机连接,这是通配符,匹配所有IP地址和主机名。
分配读写权限
为特定数据库分配读写权限
GRANT ALL PRIVILEGES ON database_name.* TO 'username'@'localhost';
为所有数据库分配读写权限(谨慎使用)
GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost';
分配特定权限(更细粒度控制)
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER
ON database_name.* TO 'username'@'localhost';
刷新权限
执行以下命令使权限更改立即生效:
FLUSH PRIVILEGES;
查看用户权限
SHOW GRANTS FOR 'username'@'localhost';
注意事项
- 生产环境中应尽量限制权限范围,遵循最小权限原则
- 使用强密码并定期更换
- 对于远程连接,考虑使用SSH隧道或其他安全措施
- 完成后记得退出MySQL会话:
exit