• MySQL 默认引擎 默认编码


    mysql默认的存储引擎是什么?它们的区别有哪些?mysql中索引有哪些?

    1、mysql默认引擎

      mysql-5.1版本之前默认引擎是MyISAM,之后是innoDB


    2、关系

      MyISAM是非集聚引擎,支持全文索引;不支持事务;它是表级锁;会保存表的具体行数.
      innoDB是集聚引擎,5.6以后才有全文索引;支持事务;它是行级锁;不会保存表的具体行数.


    一般:不用事务的时候,count计算多的时候适合myisam引擎。对可靠性要求高就是用innodby引擎。

    3、索引分类

    1.普通索引index :加速查找
    2.唯一索引
    主键索引:primary key :加速查找+约束(不为空且唯一)
    唯一索引:unique:加速查找+约束 (唯一)
    3.联合索引
    -primary key(id,name):联合主键索引
    -unique(id,name):联合唯一索引
    -index(id,name):联合普通索引
    4.全文索引fulltext :用于搜索很长一篇文章的时候,效果最好。
    5.空间索引spatial :了解就好,几乎不用

    Mysql设置默认编码格式为UTF-8(修复MySQL中文乱码)

    Linux下MySQL设置编码格式

    前言:MySQL是大家必备的数据库,但在服务器上有时新装的MySQL默认编码格式不正确,导致无法正常显示中文,因此需要重设默认编码

    查看编码格式

    • 连接进入MySQL后,执行:show variables like ‘%char%’;
    • 查看自己的编码格式
    • 通用模式为下图,如果你的配置和下图相同,那么请检查你的表默认格式
    • 在这里插入图片描述

    添加配置文件

    • MySQL的配置文件为:my.cnf
    • 路径一般在:/etc/my.cnf
    • 如果没看到可以执行指令搜索:find / -name my.cnf
    • 备注:没该文件MySQL也能正常启动,my.cnf的作用在于提供配置参数,不存在则使用默认参数(所以会导致编码问题),不存在该文件的同学只要新建一个到**/etc**下即可

    添加文件内容

    • 如果已有my.cnf文件,则在原有文件内容下添加
    [client]
    default-character-set=utf8
    [mysqld]
    default-storage-engine=INNODB
    character-set-server=utf8
    collation-server=utf8_general_ci
    • 没有的话新建后添加内容即可

    重启MySQL

    • 执行指令:service mysqld restart完成重启
    • 成功后重新连接MySQL
    • 执行**show variables like ‘%char%’;**再次查看格式
    • 正常情况,这里就可以显示中文了

    截图对比

    修改前:
    在这里插入图片描述
    在这里插入图片描述
    修改后:
    在这里插入图片描述
    在这里插入图片描述

    其他

      • 若数据库编码已经正确仍不能显示中文。执行show create table tableName;
      • 执行**alter table tableName character set utf8;**来修改表编码
      • 正常表编码:
        在这里插入图片描述
  • 相关阅读:
    我的javascript学习路线图
    Javascript 严格模式
    犀牛书学习笔记(10):模块和命名空间
    犀牛书学习笔记(9):继承
    犀牛书学习笔记(7):定义和使用类或对象
    犀牛书学习笔记(6):理解作用域和作用域链
    犀牛书学习笔记(5):javascript中的对象
    犀牛书学习笔记(4):面向对象(OOP)之回顾JAVA
    犀牛书学习笔记(3):函数
    bug
  • 原文地址:https://www.cnblogs.com/dengziqi/p/14285807.html
Copyright © 2020-2023  润新知