暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Mysql数据库学习笔记(三)

Python数据分析实例 2020-11-17
500


Mysql高级进阶


  • 事务控制

    • 事务是指作为一个逻辑工作单元执行的一系列操作,这些操作要么全部成功,全部失败。事务确保对多个数据的修改作为一个单元来处理。

      • 在mysql中,只有使用innodb存储引擎的数据库或表才支持事务

      • 事务用于维护数据库的完整性,保证成批的sql语句要么都执行,要么都不执行

      • 事务用于管理insert、update、delete语句

      • 示例

    • 事务的四个特性

      原子性、一致性、隔离性、持久性。

    • mysql事务控制

      • 默认情况下,mysql自动提交事务,即每一条insert、update、delecte的sql语句提交后立即执行commit操作。开启一个事务,可以使用start transaction 或begin,或者将autocommit的值设置为0.

  • 分区表

    • 就是按照某种规则将同一张表的数据分段划分到多个位置存储。对数据的分区存储提高了数据库的性能,被分区存储的数据在物理上是多个文件,但是逻辑上仍然是一个表,对表的任何操作都跟没分表之前一样。在执行增、删、改、查等操作时,数据库会自动找到对应的分区,日能耗执行操作。

      • 从5.1.3开始支持分区partition

      • 在mysql8.0中,只有innodb、NDB两个存储引擎支持分区。

    • 分区表好处

      • 5大好处:提高查询吞吐、并行处理、便于管理、提高查询效率、存储更多

    • 分区表4种类型

      • Range分区、List分区、Key分区、Hash分区。

      • Range分区基于一个给定连续区间的列值,把多行分配给分区。

      • List分区基于列值匹配一个离散值集合中的某个值来进行选择。

      • Hash分区基于用户定义的表达式返回值来进行选择的分区。

      • Key分区类似Hash分区,这里Hash Key由mysql系统产生的

      • 分区其他操作


  • 视图

    • 视图是一个虚拟表。复杂查询语句的封装。

    • 视图的基本操作。

  • 复制表的几种方式

  • 导出数据

    • 几种方式(show variables like "%secure_file_priv%";查看数据存放位置,null表示禁止导出;不为空必须指定该存放位置)

      • select ...into outfile将查询结果导出到文本文件

      • 使用mysql命令连接数据库,有一个-e选项,可以执行指定的sql语句,再结合DOS的重定向操作符">"可以将查询结果导出到文件。

      • mysqldump是MYSQL用于转存数据库的实用程序,它主要产生一个sql脚本,其中包含创建数据库,数据表,插入数据等所必需的sql语句

  • 定时备份数据库

    • windows备份

    • Linux

  • 导入数据

    • load data

    • source命令导入较大的SQL文件。可以导入使用mysqldump备份的sql文件

  • 如何恢复误删的数据

    • 使用binlog恢复数据(set global bin_log = 'on';)

  • MySQL图形化管理工具

(MySQL Workbench、HeidiSQL支持中文、phpMyAdmin免费、Navicat付费,费用不高,支持7种数据库等)

数据库管理员、程序开发者和系统规划师提供可视化设计、模型建立、以及数据库管理功能。


Python数据分析实例   

长按二维码,关注我的公众号

文章转载自Python数据分析实例,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论