用户管理

--创建用户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

mysql数据库学习6_MySQL学习(六)相关推荐

  1. MySQL数据库简单入门学习教程---带你从零开始学mysql

    目录 学习教程: 接下来让我们了解一下数据库是什么? (一)什么是数据库?什么是数据库管理系统?什么是SQL?他们之间的关系是什么? 数据库: (二)安装MySQL数据库管理系统 (三)MySQL数据 ...

  2. 0基础能学mysql数据库吗_mysql学习入门:零基础如何使用mysql创建数据库表?

    零基础如何自学Mysql创建数据库,是Mysql学习者必经之路,Mysql是受欢迎的关系数据库管理系统,WEB应用方面MySQL是很好的RDBMS应用软件之一.如何使用Mysql创建数据库表,打开My ...

  3. MySQL数据库(1)~~一起学习数据库冲冲冲

    MySQL数据库~~一起学习数据库冲冲冲 数据库操作 1.显示当前数据库 2.创建数据库 3.使用/选中数据库 4.删除数据库 数据库表操作 1.创建表 2.查看表 3.查看表结构 4.删除表 5.表 ...

  4. 用vb删除mysql数据库数据_学习VB编程第99天,如何正确使用delete删除数据

    今天学习的主要内容是刘金玉老师MySQL数据库零基础教程第12期. 一.删除数据语法结构 语法一:Delete from 数据表名称[where语句筛选]: 语法二:delete a,b,c from ...

  5. 简述使jdbc连接mysql数据库,关于JDBC的六个步骤

    一.JDBC简述 JDBC(Java DataBase Connectivity) Java数据库连接 其实就是 利用Java语言/程序连接并访问数据库的一门技术 之前我们可以通过CMD或者navic ...

  6. MySQL 数据库锁理论(六)

    9. 数据库锁理论 根据操作类型,锁可分为 读锁(共享锁): 针对同一份数据,多个读操作可以同时进行而并不相互影响. 写锁(互斥锁): 当前写操作在没有完成之前,它会阻断其他写锁和读锁. 根据数据操作 ...

  7. mysql数据库的存储过程不用学吗,MySql数据库之存储过程学习_MySQL

    之前在工作中总是听别人提到存储过程,觉得是个很高深的东西,利用工作之余,看了下相关的知识,现将学习知识总结如下,希望可以为刚学习的人提供些许帮助. 开发环境:Navicat For Mysql. My ...

  8. MySQL数据库进阶系统学习6(MySQL高级-视图-事务-索引-账户管理-主从)

    第六部分: MySQL高级 详细资料参考html文件17 9.1 视图 问题 对于复杂的查询,往往是有多个数据表进行关联查询而得到,如果数据库因为需求等原因发生了改变, 为了保证查询出来的数据与之前相 ...

  9. mysql数据库oem_Oracle 11gR2学习之二(创建数据库及OEM管理篇)

    Oracle 安装完毕来创建一个数据库,创建之前 必须先配置数据库的监听端口 ,否则会创建过程中提示你先配置监听. 1 .监听配置如下,一直下一步- Netca -- Listenerconfigur ...

最新文章

  1. mysql与oracle函数对比
  2. Qt编写OpenMP程序--循环测试
  3. C语言的头文件和库文件(函数库)
  4. java addfirst()_Java addFirst(),addLast() 在链表(LinkedList)的开头和结尾添加元素
  5. SurfaceTexture
  6. html文件如何放到服务器上_对网盘泄露说不,自己数据放到自己服务器上,用群辉搭建个人网盘...
  7. Julia与R/Python/MATLAB比较及Julia中的Text Analysis模块
  8. C# -- RSA加密与解密
  9. 如何把测试库的统计信息导入到生产库
  10. 解决applet覆盖遮罩层div的问题
  11. 浅析ASP.NET HTTP Module
  12. Flex中如何通过设置GridLines对象的horizontalAlternateFill样式交错显示LineSeries图表背景颜色的例子...
  13. Exchange 2007 474 问题解决方法
  14. 如何去管理Java项目
  15. python应用程序无法正常启动0xc000007b_应用程序无法正常启动0xc000007b怎么解决
  16. 还在用Word写论文?收下这个排版神器,轻松搞定所有公式!
  17. 09-kafka分区数的设置
  18. 在Linux环境下怎么编译Android源码?
  19. CF785C (1600)
  20. python学习 - 标准库概览

热门文章

  1. AudioTrack到AudioFlinger流程分析(三十八)
  2. Android OMX介绍(总括)
  3. Makefile 中$@ $^ $ 解释
  4. C++最小函数模板demo
  5. Mac OS X 10.8.3反编译Android apk
  6. python之集合操作 - |
  7. sdhc 读写 扇区 linux,SD卡读写扇区注意事项(转)
  8. 腾讯云主机安全防护(云镜)/usr/local/qcloud/YunJing/YDEyes/YDService 卸载
  9. ngnix学习(二)ngnix常用命令
  10. android中自适应布局教程,Android实现自适应正方形GridView