命令:新建MySQL数据库用户及命令控制策略 1. 新建MySQL数据库用户 1.1 准备工作 确保MySQL服务器已安装并运行。 以root用户登录MySQL服务器。 1.2 创建用户
CREATE USER ‘newuser’@’localhost’ IDENTIFIED BY ‘password’;
newuser
:新用户名。localhost
:用户登录的地址,此处为本地登录。password
:用户密码。 1.3 授予权限
GRANT ALL PRIVILEGES ON database_name.* TO ‘newuser’@’localhost’;
database_name
:用户可以访问的数据库名。
1.4 刷新权限
FLUSH PRIVILEGES;
2. 命令控制策略 2.1 控制命令执行 限制用户只能执行特定的命令,可以使用MySQL的GRANT
语句配合WITH GRANT OPTION
。 只允许用户执行SELECT
和INSERT
命令:
GRANT SELECT, INSERT ON database_name.* TO ‘newuser’@’localhost’ WITH GRANT OPTION;
2.2 限制登录IP 通过修改MySQL配置文件my.cnf
或my.ini
,在[mysqld]
部分添加以下内容来限制登录IP:
bindaddress = 127.0.0.1
或者在创建用户时指定IP地址:
CREATE USER ‘newuser’@’192.168.1.100’ IDENTIFIED BY ‘password’;
2.3 限制登录时间
使用MySQL的EVENT
功能来创建一个定时任务,在非工作时间内禁止用户登录。
创建一个事件:
CREATE EVENT IF NOT EXISTS prevent_login_during_off_hours
ON SCHEDULE EVERY 1 MINUTE
DO
IF CURRENT_TIME() BETWEEN ’22:00:00′ AND ’06:00:00′ THEN
KILL CONNECTION_ID();
END IF;
在CREATE USER
语句中,可以指定用户登录的时间段:
CREATE USER ‘newuser’@’localhost’ IDENTIFIED BY ‘password’
PASSWORD EXPIRE DEFAULT
PASSWORD VALID UNTIL ‘20231231’;
2.4 日志记录 启用MySQL的日志记录功能,记录所有用户登录尝试和命令执行情况。 修改my.cnf
或my.ini
文件,在[mysqld]
部分添加以下内容:
logerror = /path/to/mysql_error.log
general_log = 1
general_log_file = /path/to/mysql_general.log
通过以上步骤,可以有效地新建MySQL数据库用户,并实施相应的命令控制策略。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1155818.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复