MySQL(四) 用户管理,备份以及数据库规范

4 用户管理和备份

1.SQL命令操作

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FRyZY0v0-1615201121267)(/Users/pioneerrr/Desktop/截屏2021-03-08 下午5.03.18.png)]

5.数据库备份

数据转移

保证数据不丢失

5.1使用命令行导出 mysqldump

#mysqldump -h 主机 -u 用户名 -p密码 数据库 表名 >物理磁盘位置/文件名
mysqldump -h localhost -u root -p123456 school student >D:/a.sql

#导出多个表
#mysqldump -h 主机 -u 用户名 -p 密码 数据库 表1 表2.. >物理磁盘位置/文件名
mysqldump -h localhost -u root -p123456 school student result >D:/a.sql

#导出数据库
mysqldump -h localhost -u root -p123456 school  >D:/c.sql

5.2导入

#在登录的情况下,切换到指定的数据库

#登录 source 备份文件
source d:a.sql

#不登录
mysql -u 用户名 -p密码 库名< 备份文件

6.规范数据库设计

当数据库比较复杂的时候,就需要设计数据库了。

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

糟糕的数据库设计 :

数据冗余,存储空间浪费

数据更新和插入的异常

程序性能差

良好的数据库设计 :

节省数据的存储空间

能够保证数据的完整性

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

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

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

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

个人博客的创建框架(数据库的设计)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NaWENVPP-1615201121270)(/Users/pioneerrr/Downloads/IMG_F07DBF11B1E4-1.jpeg)]

总结:

设计数据库步骤

1.收集信息

2.与该系统有关人员进行交流 , 座谈 , 充分了解用户需求 , 理解数据库需要完成的任务.

3.标识实体[Entity]

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

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

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

7.数据库设计的三大范式(记忆了解)

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

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

    信息重复 更新异常 插入异常 无法正确表示信息 删除异常 丢失有效信息

第一范式:1NF是对属性的原子性约束,要求属性具有原子性,不可再分解;

通俗的理解是,字段还可以再分吗?如过不能,则是符合1NF的设计。

第二范式:2NF满足第一范式,每张表只描述一件事情

比如说:你填写一个地址,上面有省,市,区,镇,村等等。第二范式要求每一列都与主键相关,而不是某一部分和主键相关。

第三范式:3NF满足第一范式和第二范式

第三范式要求每一列与主键直接相关,而不是间接相关。

规范化和性能的关系

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

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

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

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

经验分享 程序员 微信小程序 职场和发展