zoukankan      html  css  js  c++  java
  • MySQL简介

    MYSQL简介

    MySQL的优点

    1. 可移植性好
    2. 强大的数据保护功能
    3. 提供多种存储器引擎
    4. 功能强大
    5. 支持大型数据库
    6. 运行速度快

    SQL语句的分类

    DQL(数据查询语言):查询语句,凡是select都是DQL。

    DML(数据操作语言):insert delete update,对表当中的数据进行增删改查。

    DDL(数据定义语言):create drop alert,对表结构的增删改。

    TCL(事务控制语言):commit提交事务,roollback回滚事务。

    DCL(事务控制语言):grant授权、revoke撤销权限等。

    存储引擎

    什么叫存储引擎

    存储引擎MySQL中的数据用各种不同的技术存储在文件(或者内存)中。

    存储引擎这个名字只有在mysql中存在。(Oracle中有对应的机制,但是不叫做存储引擎。Oracle中没有特殊的名字,就是“表的存储方式”)。

    查看mysql当前支持的存储引擎

    show ebgines G;
    *************************** 1. row ***************************
          Engine: InnoDB
         Support: DEFAULT
         Comment: Supports transactions, row-level locking, and fo
    Transactions: YES
              XA: YES
      Savepoints: YES
    *************************** 2. row ***************************
          Engine: MRG_MYISAM
         Support: YES
         Comment: Collection of identical MyISAM tables
    Transactions: NO
              XA: NO
      Savepoints: NO
    *************************** 3. row ***************************
          Engine: MEMORY
         Support: YES
         Comment: Hash based, stored in memory, useful for tempora
    Transactions: NO
              XA: NO
      Savepoints: NO
    *************************** 4. row ***************************
          Engine: BLACKHOLE
         Support: YES
         Comment: /dev/null storage engine (anything you write to
    Transactions: NO
              XA: NO
      Savepoints: NO
    *************************** 5. row ***************************
          Engine: MyISAM
         Support: YES
         Comment: MyISAM storage engine
    Transactions: NO
              XA: NO
      Savepoints: NO
    *************************** 6. row ***************************
          Engine: CSV
         Support: YES
         Comment: CSV storage engine
    Transactions: NO
              XA: NO
      Savepoints: NO
    *************************** 7. row ***************************
          Engine: ARCHIVE
         Support: YES
         Comment: Archive storage engine
    Transactions: NO
              XA: NO
      Savepoints: NO
    *************************** 8. row ***************************
          Engine: PERFORMANCE_SCHEMA
         Support: YES
         Comment: Performance Schema
    Transactions: NO
              XA: NO
      Savepoints: NO
    *************************** 9. row ***************************
          Engine: FEDERATED
         Support: NO
         Comment: Federated MySQL storage engine
    Transactions: NULL
              XA: NULL
      Savepoints: NULL
    #一共有9个存储引擎
    #建表的时候可以指定存储引擎,也可以指定字符集
    #mysql默认使用的存储引擎是InnoDB方式,默认采用的字符集是UTF8。
    

    常用的存储引擎

    MyISAM

    MyISAM是MySQL最常用的存储引擎。

    MyISAM存储引擎不支持事务。

    它管理的表具有以下特征:

    1. 使用三个文件表示每个表:
      • 格式文件 — 存储表结构的定义(mytable.frm)
      • 数据文件 — 存储表中的数据(mytable.MYD)
      • 索引文件 — 存储表上索引(mytable.MYI)
    2. 灵活的AUTO_INCREMENT字段处理
    3. 可被转换为压缩,只读表来节省空间

    InnoDB

    InnoDB存储引擎是MySQL的缺省引擎

    它管理的表具有以下特征:

    1. 每个InnoDB表在数据库目录中以.frm格式文件表示
    2. InnoDB表空间tablespace用于存储表的数据
    3. 提供一组用来记录事务性活动的日志文件
    4. 用COMMIT(提交)、SAVEPOINT及ROLLBACK(回滚)支持事务处理
    5. 提供全ACID服务器崩溃后提供自动恢复
    6. 多版本(MVCC)和行级锁定
    7. 支持外键及引用的完整性,包括级联删除和更新

    数据存储在tablespace这样的表空间中(逻辑概念),无法被压缩,无法转换成只读。

    MEMORY

    使用MEMORY存储引擎的表,其数据存储在内存中,且行的长度固定,这两个特点使得MEMORY存储引擎非常快。

    它管理的表具有以下特征:

    1. 在数据库目录内,每个表均以.frm格式的文件表示
    2. 表数据及索引被存储在内存中
    3. 表级锁机制
    4. 不能包含TEXT或BLOB字段

    MEMORY存储引擎以前被称为HEAP引擎

  • 相关阅读:
    初识计算机
    前端html css
    mysql高级
    mysql多表查询
    mysql数据库查询
    mysql表关系
    mysql数据类型
    mysql数据库介绍
    异步回调 协程
    GIL-全局解释器锁
  • 原文地址:https://www.cnblogs.com/striver20/p/13853374.html
Copyright © 2011-2022 走看看