如何设计数据库及授予权限?


在数据库中,我们可以做许许多多的事情,比如给用户授予权限,设计数据库等等。今天我们就来介绍一下设计数据库及授予权限的方法。

如何设计数据库及授予权限?

权限及设计数据库

用户管理

使用SQLyog 创建用户,并授予权限演示

基本命令

/* 用户和权限管理 */ ------------------
用户信息表:mysql.user

-- 刷新权限
FLUSH PRIVILEGES
 
-- 增加用户  CREATE USER kuangshen IDENTIFIED BY '123456'
CREATE USER 用户名 IDENTIFIED BY [PASSWORD] 密码(字符串)
    - 必须拥有mysql数据库的全局CREATE USER权限,或拥有INSERT权限。
    - 只能创建用户,不能赋予权限。
    - 用户名,注意引号:如 'user_name'@'192.168.1.1'
    - 密码也需引号,纯数字密码也要加引号
    - 要在纯文本中指定密码,需忽略PASSWORD关键词。要把密码指定为由PASSWORD()函数返回的混编值,需包含关键字PASSWORD

-- 重命名用户  RENAME USER kuangshen TO kuangshen2
RENAME USER old_user TO new_user

-- 设置密码
SET PASSWORD = PASSWORD('密码')    -- 为当前用户设置密码
SET PASSWORD FOR 用户名 = PASSWORD('密码')    -- 为指定用户设置密码

-- 删除用户  DROP USER kuangshen2
DROP USER 用户名

-- 分配权限/添加用户
GRANT 权限列表 ON 表名 TO 用户名 [IDENTIFIED BY [PASSWORD] 'password']
    - all privileges 表示所有权限
    - *.* 表示所有库的所有表
    - 库名.表名 表示某库下面的某表

-- 查看权限   SHOW GRANTS FOR root@localhost;
SHOW GRANTS FOR 用户名
    -- 查看当前用户权限
    SHOW GRANTS; 或 SHOW GRANTS FOR CURRENT_USER; 或 SHOW GRANTS FOR CURRENT_USER();

-- 撤消权限
REVOKE 权限列表 ON 表名 FROM 用户名
REVOKE ALL PRIVILEGES, GRANT OPTION FROM 用户名    -- 撤销所有权限

权限解释

-- 权限列表
ALL [PRIVILEGES]    -- 设置除GRANT OPTION之外的所有简单权限
ALTER    -- 允许使用ALTER TABLE
ALTER ROUTINE    -- 更改或取消已存储的子程序
CREATE    -- 允许使用CREATE TABLE
CREATE ROUTINE    -- 创建已存储的子程序
CREATE TEMPORARY TABLES        -- 允许使用CREATE TEMPORARY TABLE
CREATE USER        -- 允许使用CREATE USER, DROP USER, RENAME USER和REVOKE ALL PRIVILEGES。
CREATE VIEW        -- 允许使用CREATE VIEW
DELETE    -- 允许使用DELETE
DROP    -- 允许使用DROP TABLE
EXECUTE        -- 允许用户运行已存储的子程序
FILE    -- 允许使用SELECT...INTO OUTFILE和LOAD DATA INFILE
INDEX     -- 允许使用CREATE INDEX和DROP INDEX
INSERT    -- 允许使用INSERT
LOCK TABLES        -- 允许对您拥有SELECT权限的表使用LOCK TABLES
PROCESS     -- 允许使用SHOW FULL PROCESSLIST
REFERENCES    -- 未被实施
RELOAD    -- 允许使用FLUSH
REPLICATION CLIENT    -- 允许用户询问从属服务器或主服务器的地址
REPLICATION SL*E    -- 用于复制型从属服务器(从主服务器中读取二进制日志事件)
SELECT    -- 允许使用SELECT
SHOW DATABASES    -- 显示所有数据库
SHOW VIEW    -- 允许使用SHOW CREATE VIEW
SHUTDOWN    -- 允许使用mysqladmin shutdown
SUPER    -- 允许使用CHANGE MASTER, KILL, PURGE MASTER LOGS和SET GLOBAL语句,mysqladmin debug命令;允许您连接(一次),即使已达到max_connections。
UPDATE    -- 允许使用UPDATE
USAGE    -- “无权限”的同义词
GRANT OPTION    -- 允许授予权限


/* 表维护 */

-- 分析和存储表的关键字分布
ANALYZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE 表名 ...
-- 检查一个或多个表是否有错误
CHECK TABLE tbl_name [, tbl_name] ... [option] ...
option = {QUICK | FAST | MEDIUM | EXTENDED | CHANGED}
-- 整理数据文件的碎片
OPTIMIZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ...

MySQL备份

数据库备份必要性

  • 保证重要数据不丢失

  • 数据转移

MySQL数据库备份方法

  • mysqldump备份工具

  • 数据库管理工具,如SQLyog

  • 直接拷贝数据库文件和相关配置文件

mysqldump客户端

作用 :

  • 转储数据库

  • 搜集数据库进行备份

  • 将数据转移到另一个SQL服务器,不一定是MySQL服务器

-- 导出
1. 导出一张表 -- mysqldump -uroot -p123456 school student >D:/a.sql
  mysqldump -u用户名 -p密码 库名 表名 > 文件名(D:/a.sql)
2. 导出多张表 -- mysqldump -uroot -p123456 school student result >D:/a.sql
  mysqldump -u用户名 -p密码 库名 表1 表2 表3 > 文件名(D:/a.sql)
3. 导出所有表 -- mysqldump -uroot -p123456 school >D:/a.sql
  mysqldump -u用户名 -p密码 库名 > 文件名(D:/a.sql)
4. 导出一个库 -- mysqldump -uroot -p123456 -B school >D:/a.sql
  mysqldump -u用户名 -p密码 -B 库名 > 文件名(D:/a.sql)

可以-w携带备份条件

-- 导入
1. 在登录mysql的情况下:-- source D:/a.sql
  source  备份文件
2. 在不登录的情况下
  mysql -u用户名 -p密码 库名 < 备份文件

规范化数据库设计

为什么需要数据库设计

当数据库比较复杂时我们需要设计数据库

糟糕的数据库设计 :

  • 数据冗余,存储空间浪费

  • 数据更新和插入的异常

  • 程序性能差

良好的数据库设计 :

  • 节省数据的存储空间

  • 能够保证数据的完整性

  • 方便进行数据库应用系统的开发

软件项目开发周期中数据库设计 :

  • 需求分析阶段: 分析客户的业务和数据处理需求

  • 概要设计阶段:设计数据库的E-R模型图 , 确认需求信息的正确和完整.

设计数据库步骤

  • 收集信息

    v3.4.0智睿报修管理系统 v3.4.0智睿报修管理系统

    智睿报修管理系统定位行政企业,单位,机关加快网络无纸办公化,网络信息报修管理系统,系统支持城市区域模块管理,会员信息模块,报修种类,维修工人信息显示,达到快速准确到位,支持在线打印,数据导出,汇总数据,报修次数统计。本系统为免费版本,不收取任何费用,可直接使用。 功能模块: 权限设置 - 可设多个管理员,自由分配选项管理权限 数据备份 - 支持在线数据库备份及还原数据库 类别管理 - 支持

    v3.4.0智睿报修管理系统 161 查看详情 v3.4.0智睿报修管理系统
    • 与该系统有关人员进行交流 , 座谈 , 充分了解用户需求 , 理解数据库需要完成的任务.

  • 标识实体[Entity]

    • 标识数据库要管理的关键对象或实体,实体一般是名词

  • 标识每个实体需要存储的详细信息[Attribute]

  • 标识实体之间的关系[Relationship]

三大范式

问题 : 为什么需要数据规范化?

不合规范的表设计会导致的问题:

  • 信息重复

  • 更新异常

  • 插入异常

    • 无法正确表示信息

  • 删除异常

    • 丢失有效信息

三大范式

第一范式 (1st NF)

第一范式的目标是确保每列的原子性,如果每列都是不可再分的最小数据单元,则满足第一范式

第二范式(2nd NF)

第二范式(2NF)是在第一范式(1NF)的基础上建立起来的,即满足第二范式(2NF)必须先满足第一范式(1NF)。

第二范式要求每个表只描述一件事情

第三范式(3rd NF)

如果一个关系满足第二范式,并且除了主键以外的其他列都不传递依赖于主键列,则满足第三范式.

第三范式需要确保数据表中的每一列数据都和主键直接相关,而不能间接相关。

规范化和性能的关系

为满足某种商业目标 , 数据库性能比规范化数据库更重要

在数据规范化的同时 , 要综合考虑数据库的性能

通过在给定的表中添加额外的字段,以大量减少需要从中搜索信息所需的时间

通过在给定的表中插入计算列,以方便查询

相关学习推荐:mysql教程(视频)

以上就是如何设计数据库及授予权限?的详细内容,更多请关注其它相关文章!


# 都是  # 旅游营销策略推广方法  # 东营网站建设的步骤  # 优化网站模板选择  # 文登网站建设收费  # 盐城阜宁seo  # 江门网站建设工作  # 拉萨营销推广短信  # 大岭山企业全网营销推广  # 大型网站优化书籍  # 网络营销推广小说  # 数据库  # 安全策略  # 新和  # 三大  # 主键  # 多个  # 子程序  # 离线  # 管理系统  # 关键词 


相关栏目: 【 Google疑问12 】 【 Facebook疑问10 】 【 优化推广96088 】 【 技术知识133117 】 【 IDC资讯59369 】 【 网络运营7196 】 【 IT资讯61894 】


相关推荐: 德邦快递收费标准详解  包子漫画官网链接官方地址 包子漫画在线观看官网首页入口  163邮箱在线登录 163邮箱网页版在线入口  小红书网页版在线直达 小红书网页版免费登录入口  《七读免费小说》开通会员方法  学习通网页版课程打不开_课程无法访问时的解决方法  网页版网易云音乐入口_网易云音乐在线官网登录  蛙漫2(台版)正版官网 2025免费网页版分享  HTML Canvas文本样式定制指南:解决外部字体加载与应用难题  管理打开的编辑器:固定、分组和关闭技巧  如何在mysql中比较InnoDB和MyISAM区别  哔哩哔哩黑名单怎么查看  键盘测试软件哪个好_键盘故障检测工具推荐  海棠阅读登录教程_详细讲解海棠登录操作  基于 Flink 和 Kafka 实现高效流处理:连续查询与时间窗口  智学网app怎么登录忘记密码_智学网app忘记密码找回与重新登录操作方法  139邮箱登录入口官网 139邮箱登录入口官网网址  跨语言测试实践:使用Python Selenium测试现有J*a Web项目  三角洲行动2025年9月10日摩斯密码分享  大众点评了却看不到是怎么回事  cad怎么隐藏指定的图层_cad隐藏或冻结图层方法  Go Goroutine调度与并发执行深度解析  Python实时数据流中高效查找最大最小值  抖音赚钱快速入门_新手必看的抖音赚钱步骤  NumPy 高性能技巧:基于多列条件查找最近邻行索引的向量化实现  AO3中文版手机快速通道_AO3最新稳定链接更新  J*aScript包管理器_Npm与Yarn对比  顺丰速运官网查询入口 顺丰物流查询官网入口链接  抖音怎么解除第三方绑定_抖音解除第三方平台绑定方法介绍  composer 提示 "requires ext-soap" 缺少 SOAP 扩展怎么办?  《星露谷物语》克林特好感度事件介绍  《金山词霸》语音翻译方法  LocoySpider如何批量采集电商商品_LocoySpider电商采集的模板应用  192.168.1.1路由器后台入口 192.168.1.1默认登录入口  Python中深度嵌套字典与列表的数据提取与条件过滤指南  金牛福袋获取攻略  SQL聚合查询、联接与筛选:GROUP BY 子句的正确使用与常见陷阱  芒果TV官网登录入口 芒果TV官方网站登录入口  深入理解Python对象引用与链表属性赋值  《律学法考》查看学习数据方法  《小黑盒》删除历史浏览方法  掌握Go App Engine项目结构与GOPATH:包管理与导入实践  如何高效地基于键列值映射DataFrame中的多个列  悟空浏览器网页版链接 悟空浏览器网页版最新有效地址  mysql导入sql文件能分批导入吗_mysql分批次导入大sql文件的实用技巧  汽水音乐官网网页版入口 汽水音乐官网网页版在线入口  J*aScript模块加载器_RequireJS原理分析  企查查官网和爱企查 企查查企业查询官网入口  Python中对象引用与链表属性赋值的机制解析  曝《丝之歌》DLC有望开发!开发商还有神秘新企划 

 2021-07-07

了解您产品搜索量及市场趋势,制定营销计划

同行竞争及网站分析保障您的广告效果

点击免费数据支持

提交您的需求,1小时内享受我们的专业解答。

运城市盐湖区信雨科技有限公司


运城市盐湖区信雨科技有限公司

运城市盐湖区信雨科技有限公司是一家深耕海外推广领域十年的专业服务商,作为谷歌推广与Facebook广告全球合作伙伴,聚焦外贸企业出海痛点,以数字化营销为核心,提供一站式海外营销解决方案。公司凭借十年行业沉淀与平台官方资源加持,打破传统外贸获客壁垒,助力企业高效开拓全球市场,成为中小企业出海的可靠合作伙伴。

 8156699

 13765294890

 8156699@qq.com

Notice

We and selected third parties use cookies or similar technologies for technical purposes and, with your consent, for other purposes as specified in the cookie policy.
You can consent to the use of such technologies by closing this notice, by interacting with any link or button outside of this notice or by continuing to browse otherwise.