1,mysql密码策略
设置密码过期策略
Mysql数据库用户同系统用户一样,可以设置密码过期策略,密码的过期天数可以在配置文件里面设置,也可以通过命令设置,通过命令为每个用户设置密码的过期天数则会覆盖系统配置文件中的设置。
1)配置文件中设置
选项:default_password_lifetime=”过期天数” :如果设置为0,则密码永不过期。
2)通过命令设置
命令:alter user ‘username’@’localhost’ password expire interval number day; 设置过期天数
alter user ‘username’@’localhost’ password expire never; 设置密码不过期
alter user ‘username’@’localhost’ password expire default; 默认过期策略
alter user ‘username’@’localhost’ password expire; 手动强制密码过期
#设置用户user的密码180天后过期
mysql> alter user ‘user’@‘localhost’ password expire interval 180 day;
Query OK, 0 rows affected (0.00 sec)
设置用户dayi的密码立即过期
mysql> alter user ‘user’@‘localhost’ password expire;
Query OK, 0 rows affected (0.00 sec)
查询数据库密码策略
show varialbes like ‘vali%’;
mysql数据库用户资源限制
通过修改mysql数据库资源限制可以限制用户在某个时间段内连接mysql数据库的时间、执行语句的次数等。
1)设置参数:
max_user_connections:全局选项,限制所有用户在同一时间连接mysql数据库实例的数量
MAX_QUERIES_PER_HOUR:一个用户在一个小时内可以执行查询的次数(基本包含所有语句)
MAX_UPDATES_PER_HOUR:一个用户在一个小时内可以执行修改的次数(仅包含修改数据库或表的语句)
MAX_CONNECTIONS_PER_HOUR:一个用户在一个小时内可以连接MySQL的时间
MAX_USER_CONNECTIONS:一个用户可以在同一时间连接MySQL实例的数量
2)设置mysql数据库用户资源限制
设置mysql数据库用户资源限制时可以在创建用户时设置,也可以在用户创建完成后通过命令设置。
创建用户user,并对用户day的资源进行控制
mysql> create user ‘user’@‘localhost’ identified by ‘user’ with max_queries_per_hour 20 max_updates_per_hour 10 max_connections_per_hour 5 max_user_connections 2;
Query OK, 0 rows affected (0.00 sec)
对用户user进行资源控制
mysql> alter user ‘user’@‘localhost’ with max_queries_per_hour 20 max_updates_per_hour 10 max_connections_per_hour 5 max_user_connections 2;
Query OK, 0 rows affected (0.00 sec)