如何创建MySQL账号并分配读写权限?

74 阅读1分钟

如何创建MySQL账号并分配读写权限

创建新MySQL账号

  1. 首先以root用户登录MySQL:

    mysql -u root -p
    
  2. 创建新用户(将usernamepassword替换为你想要的用户名和密码):

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

注意事项

  1. 生产环境中应尽量限制权限范围,遵循最小权限原则
  2. 使用强密码并定期更换
  3. 对于远程连接,考虑使用SSH隧道或其他安全措施
  4. 完成后记得退出MySQL会话:exit