当前位置: 首页 > news >正文

mysql 23-3day 数据库授权(DCL)

目录

  • 创建一个用户 并授权(grant)
  • 设置最大连接数
  • 客户端链接服务器
  • 创建用户
  • 删除用户
  • 修改用户
  • 修改密码
  • root修改自己密码
  • 授予 mysql 权限
  • 收回权限
  • 收回权限
  • 刷新一下授权表
  • mydql 知识点
    • 确保 mysql 用户为普通用户
    • 删除空口令账号
    • 安全建议

创建一个用户 并授权(grant)

mysql 用户名分为两部分
root@localhost

grant all on *.* to "remote"@"%" identified by "123";
参数解释
all 是权限
*.*  --所有库 当然这里 也是可以指定库
"remote"@"%"  //创建remote 用户 % 可以在任何地址
identified by "123"  //设置这个密码# 设置某个网段
grant all on *.* to "remote"@"10.12.155.%" identified by "123";
"remote"@"10.12.155.%"  //设置了某个网段

root 用户 不能远程登录 因为root用户不是用来工作的只是用来授权的
只能本地登录

设置最大连接数

编辑这个文件
vim /etc/my.cnf在文件中写入
max_connections=2

客户端链接服务器

客户端语法:mysql  -u用户名  -p密码  -hip地址   -P端口号:如果没有改端口号就不用-P指定端口
# mysql -h192.168.62.148 -P 3306 -uroot -p123

创建用户

    mysql> create user '用户名'@'客户端来源IP地址' identified by '密码';mysql> create user newrain@'192.168.62.%' identified by '123';

删除用户

    mysql> drop user '用户名'@'客户端来源IP地址';mysql> drop user newrain@'192.168.62.%';

修改用户

    mysql> rename user '用户名'@'客户端来源IP地址' to '新用户名'@'客户端来源IP地址' ;mysql> rename user newrain@'192.168.62.%' to ehome@'%';

修改密码

// 第一种方法:set password for '用户名'@'IP地址'=Password('新密码')mysql> set password for ehome@'%'=Password('123');// 第二种方法:alter user '用户名'@'客户端来源IP地址' identified by '新密码';// 第三种方法(忘记密码时,必须使用此方法修改密码):UPDATE mysql.user SET authentication_string=password('QFedu123!') WHERE user='root' and host='localhost';

root修改自己密码

 mysqladmin -uroot -p'123' password 'new_password'	    //123为旧密码#实例mysqladmin -uroot -p'123' password 'qf@123';

授予 mysql 权限

GRANT SELECT, INSERT, UPDATE ON database.* TO 'username'@'localhost' IDENTIFIED BY 'password';

权限类型============================================
SELECT:允许用户查询表中的数据。
INSERT:允许用户向表中插入新的行。
UPDATE:允许用户更新表中现有的行。
DELETE:允许用户删除表中的行。
CREATE:允许用户创建新的数据库或表。
DROP:允许用户删除数据库或表。
ALL PRIVILEGES:允许用户对数据库执行任何操作。

收回权限

revoke delete on *.* fromm "idol"@"%" #查看用户权限
show grants for '用户'@'客户端来源IP地址';  
show grants for ehome@'%';#针对所有库 和表的权限
*.*

收回权限

revoke delete on *.* fromm "idol"@"%" #查看用户权限
show grants for '用户'@'客户端来源IP地址';  
show grants for ehome@'%';*.*

刷新一下授权表

FLUSH PRIVILEGES;

mydql 知识点

确保 mysql 用户为普通用户

groupadd mysql

useradd -M -s /sbin/nologin -g mysql mysql
要创建一个普通 用户 确保数据库启动是用普通用户 启动的
端口 默认3306
开启 mysql 二进制日志,确保数据库 可以备份

删除空口令账号

mariadb 是有空口令库的
安装mariadb 
yum -y install mariadb  -server

安全建议

1、数据库不能暴露在公网
2、禁止root 用户远程登录,授权一个普通账号,指定一个具体IP,
3、修改端口
4、msyql 这个进程用 普通用户来启动
5、删除空口零账号
6、开启 binlog 二进制日志。给数据库 做一个备份

数据库优化:
设置最大连接数
选择合适的存储引擎,innodb
增加索引
记录它的慢日志


🌸🌸🌸🌸🌸🌸完结撒花🌸🌸🌸🌸🌸🌸
南湖花开绵绵,溪流行水潺潺
品水甜甜口中,花香留在心间

http://www.lryc.cn/news/265887.html

相关文章:

  • OpenHarmony之内核层解析~
  • Chatgpt如何共享可以防止封号!
  • 智能优化算法应用:基于社交网络算法3D无线传感器网络(WSN)覆盖优化 - 附代码
  • thinkphp+vue+mysql酒店客房管理系统 b1g8z
  • nodejs+vue+ElementUi摄影作品图片分享工作室管理系统
  • 详解FreeRTOS:专栏总述
  • 在 linux 服务器上安装Redis数据库
  • 阿里云经济型、通用算力型、计算型、通用型、内存型云服务器最新活动报价
  • 回溯算法 典型习题
  • 14. 从零用Rust编写正反向代理, HTTP文件服务器的实现过程及参数
  • 【随笔】MD5加密字符串、文件apache、springframework实现
  • java八股 设计模式
  • Docker安装(CentOS)+简单使用
  • Mybatis配置-环境配置(environments)
  • Android模拟器的安装和adb连接
  • 引领创新潮流,武汉灰京文化开创游戏行业新推广标杆
  • HTML5文档
  • springboot实现发送邮件开箱即用
  • 论文阅读——RS DINO
  • 【即插即用篇】YOLOv8改进实战 | 引入 Involution(内卷),用于视觉识别的新一代神经网络!涨点神器!
  • 在Excel中,如何简单快速地删除重复项,这里提供详细步骤
  • 【Kafka-Eagle】EFAK告警配置与实践
  • 机器学习 | 概率图模型
  • 25、新加坡南洋理工、新加坡国立大学提出FBCNet:完美融合FBCSP的CNN,EEG解码SOTA水准![抱歉老师,我太想进步了!]
  • 单调栈分类、封装和总结
  • 【Amazon 实验①】使用 Amazon CloudFront加速Web内容分发
  • <math.h> 头文件:C语言数学库函数
  • 1.CentOS7网络配置
  • Prompt-to-Prompt:基于 cross-attention 控制的图像编辑技术
  • 搭载紫光展锐芯的移远通信RedCap模组顺利通过中国联通OPENLAB实验室认证