1.查看存储引擎

  1. show engines

image.png

2.设置系统默认的存储引擎

  • 查看默认的存储引擎

    show variables like '%storage_engine%'
    #或
    select @@default_storage_engine;
    

    image.png

  • 修改默认的存储引擎

    SET DEFAULT_STORAGE_ENGINE=MyISAM
    

    或者修改my.cnf文件

    default-storage-engine=MyISAM
    #重启服务
    systemctl restart mysqld.service
    

    3.引擎介绍

    InnoDB引擎:具备外键支持功能的事务存储引擎

  • InnoDB是MySQL的默认事务型引擎,它被设计用来处理大量的短期事务

  • 除了增加和查询外,还需要更新、删除操作,那么,应该优先考虑InnnoDB存储引擎
  • 除非有非常特别的原因需要使用其他的存储引擎,否则应该优先选择InnoDB引擎

    MyISAM引擎:主要的非事务处理存储引擎

    MyISAM提供了大量的特性,包括全文索引、压缩、空间函数等,但MyISAM不支持事务、行级锁、外键,崩溃后无法安全恢复。

    如果是小型应用,系统以读操作和插入操作为主,只有很少的更新、删除操作,并且对事物的要求没有那么高,则可以选择这个存储引擎。MyISAM存储引擎的优势在于占用空间小,处理速度快;缺点是不支持事务的完整性和并发性。image.png Archive引擎:用于数据存档

    适合存储大量的独立的作为历史纪录的数据,仅仅支持插入和查询两种功能

    Blackhoke引擎:丢弃写操作,读操作会返回空内容

    丢弃所有插入的数据

    CSV引擎:存储数据时,以逗号分割各个数据项

    可以将普通的CSV文件作为MYSQL的表来处理

    Memory引擎:置于内存的表

    逻辑介质是内存,响应速度很快

    Federated引擎:访问远程表

    代理

    Merge引擎:管理多个MyISAM表构成的集合

    NDB引擎:MySQL集群专用存储引擎