数据库服务器通常包含关键的数据,确保这些数据的安全和完整需要利用访问控制。

一、访问控制

MySQL服务器的安全基础:用户应该对他们需要的数据具有适当的访问权,既不能多也不能少。

访问控制:你需要给用户提供他们所需的访问权,且仅提供他们所需的访问权。

在日常工作中,绝不能使用root,应该创建一系列的账号,有的用于管理,有的供用户使用,有的供开发人员使用等等。

防止无意的错误:访问控制的目的不仅仅是防止用户的恶意企图。数据梦魇更为常见的事无意识错误的结果,如错打MySQL语句,在不适合的数据库中操作或其他一些用户错误。通过保证用户不能执行他们不应该执行的语句,访问控制有助于避免这些情况的发生。

二、管理用户

MySQL用户账号和信息存储在名为mysql的MySQL数据库中。一般不需要直接访问mysql数据库和表,但有时需要直接访问。需要直接访问他的时机之一是在需要获得所有用户账号列表时。USE mysql;

SELECT user,host FROM user;

1.创建用户账号

CREATE USER username IDENTIFIED BY 'password';

为用户账号重命名:RENAME USER username TO otherusername;

2.删除用户账号

DROP USER username;

3.设置访问权限

在创建用户账号后,必须接着分配访问权限。新创建的用户账号没有访问权限。它们能登录MySQL,但不能看到数据,不能执行任何数据库操作。

查看赋予用户账号的权限:

SHOW GRANTS FOR username;

+————————————————————-+

| Grants for username@% |

+——————————————————— —+

| GRANT USAGE ON *.* TO 'username'@'%' |

+————————————————————-+

为设置权限,使用GRANT语句。GRANT要求你至少给出以下信息:要授予的权限;

被授予访问权限的数据库或表;

用户名。

Example:

GRANT SELECT ON database.* TO username;

分析:此GRANT允许用户在database数据库的所有表(databasename.*)上使用SELECT。用户username对database数据库中的所有数据具有只读访问权限。

GRANT的反操作为REVOKE,用它来撤销特定的权限。

REVOKE SELECT ON database.* FROM username;

撤销用户username的SELECT访问权限。被撤销的访问权限必须存在,否则会出错。

4.更改口令

SET PASSWORD FOR user = Password('passworded');

Password()函数进行加密。

在不指定用户名时,SET PASSWORD更新当前登录用户的口令。

mysql的安全管理_MySQL安全管理相关推荐

  1. mysql 汉编码 的选_peewee连接mysql汉语言数据编码_mysql

    peewee连接mysql中文数据编码 系统是win7 x64 python 2.7.6的site.py里面编码设定为 utf-8 py文件首行指定 #coding:utf-8 mysql 5.5.3 ...

  2. windows 新建mysql权限设置_Windows下设置MySQL安全权限_mysql

    注意:本文的内容涉及到修改NTFS磁盘权限和设置安全策略,请务必在确认您了解操作可能的后果之后再动手进行任何的修改. 文中提及的权限都是在原有权限上附加的权限. [修改步骤] 1.创建用户 创建一个名 ...

  3. mysql函数大全最小,MySQL函数一览_MySQL函数全部汇总

    前言 MySQL提供了众多功能强大.方便易用的函数,使用这些函数,可以极大地提高用户对于数据库的管理效率,从而更加灵活地满足不同用户的需求.本文将MySQL的函数分类并汇总,以便以后用到的时候可以随时 ...

  4. mysql checksum用法_MySQL checksum理解_mysql

    mysql checksum了解 在主从复制中Checksum常常需要对某些重要的表进行一致性检查. Checksum Table在逻辑备份时候前后是否可以用于验证数据一致性.扩展一下发现有一些有趣的 ...

  5. mysql ibata文件_重装系统后,怎么调用之前mysql的数据_mysql

    重装系统后,如何调用之前mysql的数据 前提是:必须保留之前的数据库数据 在介绍此方法之前,提醒各位最好的转移数据的方法为: 在原来MYSQL服务器导出SQL文件,然后再在新的MYSQL服务器导入数 ...

  6. MySQL数据库如何管理与维护_MySQL安全管理、数据库维护及改善性能

    一.安全管理 1.访问控制 MySQL服务器的安全基础:用户对他们需要的数据有适当的访问权. 访问控制:给用户所需的权限且仅提供所需的访问权.它需要创建和管理用户账号. PS:严肃对待root登陆的使 ...

  7. mysql组件化_MySql笔记

    1.数据库基础操作语句 链接数据库:mysql -u root -p 123456; 选择数据库:USE database_name; 显示可以数据库:SHOW DATABASES; 显示数据库所有表 ...

  8. mysql调试事件_mysql日志管理分析调试实例_mysql

    以下的文章主要介绍的是mysql 操作日志查看的实际操作步骤以及对其实际操作步骤的具体描述,假如你在实际操作中遇到相似的情况,但是你却不知道对其如何正确的解决,那么以下的文章对你而言一定是良师益友. ...

  9. php验证mysql内数据_MySQL中数据类型的验证_MySQL

    CHAR char (M) M字符,长度是M*字符编码长度,M最大255. 验证如下: mysql> create table t1(name char(256)) default charse ...

最新文章

  1. 增大iphone音量技巧_就算我们把手机音量开到最大!外放声音还是小,那是这个设置没开...
  2. 733. Flood Fill 图像渲染
  3. 7.4.5 鲁棒主成分分析 PCA
  4. [LeetCode]LRU Cache有个问题,求大神解答【已解决】
  5. thinkphp5.0解决控制器驼峰命名时提示找不到类名
  6. python迭代对象有哪些_Python可迭代对象操作示例
  7. 新华三的背景_开放融合创新:新华三全力支撑运营商5G赋能百业
  8. 1.79亿实景三维项目!与房地一体有何区别?
  9. 棒!使用.NET Core构建3D游戏引擎
  10. configserver配置中心三种配置方式
  11. Opencv速成笔记--图像处理1
  12. 读书笔记_打开量化投资的黑箱05
  13. office怎么像wps一样多栏_WPS文档分栏设置,让排版更完美 Word2010如何分两栏、三栏、多栏技巧...
  14. 屏幕录像专家录制超清视频教程-王西猛-专题视频课程
  15. 利用Python,通过关键字获取漏洞平台最新漏洞信息
  16. 95%的人都会答错的类加载的问题
  17. html语言加号点一下变成减号6,CSS3 linear-gradient线性渐变生成加号和减号的方法...
  18. ckeditor富文本编辑器的使用和图片上传,复制粘贴图片上传
  19. B模式超声成像仿真(MATLAB k-Wave仿真)
  20. patch 和 put 方法区别

热门文章

  1. 超实用!!!使用IDEA插件Alibaba Cloud Toolkit工具一键部署本地应用到ECS服务器
  2. 《中国人工智能学会通讯》——5.4 结 论
  3. 【iCore3 双核心板_FPGA】例程二:GPIO输出实验——点亮三色LED
  4. uva 10158(并查集)
  5. python--装饰器初阶
  6. LeetCode每日一题:比特位计数(No.338)
  7. 配置Setting.xml文件提高maven更新下载jar包速度
  8. django准备 —环境配置,及其虚拟环境安装、django安装、数据库安装、新建项目...
  9. 51Nod 1445 变色DNA
  10. Slimer软工课设日报-2016年6月30日