mysql数据库学习6_MySQL学习(六)

用户管理

--创建用户CREATE USER 用户名 IDENTIFIED BY '密码'

CREATE USER zyw IDENTIFIED BY '123456';

--修改密码(当前用户)

SET PASSWORD = PASSWORD('123456');

--修改密码(指定用户)

SET PASSWORD FOR zyw = PASSWORD('6556456');

--重命名用户名

RENAME USER zyw TO zyw1

--用户授权 ALL PRIVILEGES 全部权限,库,表

--ALL PRIVILEGES 除了给别人授权,其他操作都能执行

GRANT ALL PRIVILEGES ON . TO zyw1

--查询权限

SHOW GRANTS FOR zyw1; --查看指定用户的权限

SHOW GRANTS FOR root@localhost;

--撤销权限 REVOKE 哪些权限,ON 在哪个库撤销(.:哪个库.哪个表),FROM 给谁撤销

REVOKE ALL PRIVILEGES ON . FROM zyw1;

--删除用户DROP USER 用户名

DROP USER zyw1;

数据库备份

为什么要备份:

保证重要数据不丢失

数据转移

MySQL数据库备份的方式:

直接拷贝物理文件

使用命令行 mysqldump

(''')

-- 导出(备份)

mysqldump -hlocalhost -uroot -p123456 testdemo student > D:/a.sql;

mysqldump -h主机名 -u用户名 -p密码 数据库名 [表名1 表名2 ...] > 存放地址/文件名.sql;

-- 导入(转移)

登录mysql情况:source a.sql;

source 备份文件;

未登录: mysql -u用户名 -p密码 库名 < 备份文件;

(''')

规范化数据库设计

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

糟糕的数据库设计:

数据冗余,存储空间浪费

数据更新和插入异常

程序性能差

良好的数据库:

节省数据的存储空间

能保证数据的完整性

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

设计数据库步骤:

收集信息:分析了解用户需求,理解数据库需要完成的任务

标识实体(Entiry):标识数据库需要的关键对象或实体,实体一般是名词

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

标识实体之间的关系(Relationship)

三大范式

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

信息重复

更新异常

插入异常:无法正确表示信息

删除异常:丢失有效信息

第一范式(1st NF)

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

第二范式(2nd NF)

第二范式是在满足第一范式的前提下,要求每个表只能描述一件事件

第三范式(3rd NF)

第三范式是在满足第二范式的前提下,除主键外的其他列都不传递依赖于主键,则满足第三范式

第三范式需要保证数据表中的每一列数据都与主键直接相关,而不是间接相关

规范化和性能的关系

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

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

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

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

JDBC

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值